Start Menu Shortcut Example
Using a component script to add an entry to the Windows Start menu.

Start Menu illustrates how to use the Component function to add an entry for opening a README file to the Windows Start menu.
Configuring the Example Installer
The installer configuration file, config.xml, in the config directory specifies the text and default values used in the installer:
- The
<Name>element specifies the application name that is added to the page name and introduction text. - The
<Version>element specifies the application version number. - The
<Title>element specifies the installer name displayed on the title bar. - The
<Publisher>element specifies the publisher of the software (as shown in the Windows Control Panel, for example). - The
<StartMenuDir>element specifies the name of the default program group for the product in the Windows Start menu. - The
<TargetDir>element specifies that the default target directory is located in theIfwExamplesdirectory in the home directory of the current user (because the predefined variable@HomeDir@is used as a part of the value). For more information, see Predefined Variables.
<?xml version="1.0" encoding="UTF-8"?>
<Installer>
<Name>Start Menu Shortcut Example</Name>
<Version>1.0.0</Version>
<Title>Start Menu Shortcut Example</Title>
<Publisher>Qt-Project</Publisher>
<StartMenuDir>Qt Installer Framework Examples</StartMenuDir>
<TargetDir>@HomeDir@/IfwExamples/startmenu</TargetDir>
</Installer>
Creating the Example Package Information File
The installer package information file, package.xml, in the meta directory specifies the components that are available for installation:
- The
<DisplayName>element specifies the human-readable name of the component. - The
<Description>element specifies the human-readable description of the component. - The
<Version>element specifies the version number of the component. - The
<ReleaseDate>element specifies the date when this component version was released.
- The
<Default>element is set totrueto preselect the component in the installer. - The
<Script>element specifies the file name of the JavaScript file that is loaded to perform operations.
<?xml version="1.0" encoding="UTF-8"?>
<Package>
<DisplayName>README.txt</DisplayName>
<Description>A README.txt, accessible through a start menu entry.</Description>
<Version>1.0.0-1</Version>
<ReleaseDate>2013-01-01</ReleaseDate>
<Default>true</Default>
<Script>installscript.qs</Script>
</Package>
Adding Entries to Start Menu
In installscript.qs, we use the createOperations() function to call the component::createOperations() function, which creates the Extract operation by default:
Component.prototype.createOperations = function()
{
component.createOperations();
On Windows, we use the component::addOperation function to add a shortcut to the Start menu for opening the readme file:
if (systemInfo.productType === "windows") {
component.addOperation("CreateShortcut", "@TargetDir@/README.txt", "@StartMenuDir@/README.lnk",
"workingDirectory=@TargetDir@", "iconPath=%SystemRoot%/system32/SHELL32.dll",
"iconId=2", "description=Open README file");
}
}
Generating the Example Installer
To create the example installer, switch to the example source directory on the command line and enter the following command:
- On Windows:
..\..\bin\binarycreator.exe -c config\config.xml -p packages installer.exe
- On Linux or macOS:
../../bin/binarycreator -c config/config.xml -p packages installer
The installer is created in the current directory.
Files: