Comments

1 comment

  • Avatar
    Jake

    You can make the installer ask the user a yes/no question using a boolean parameter. You will have to include a section like the one below inside the parameterList section of your XML installer project file.

    <booleanParameter>
     <name>createdb</name>
     <ask>yes</ask>
     <default>1</default>
     <title>Database Install</title>
     <explanation>Should initial database structure and data be created?</explanation>
     <value>1</value>
    </booleanParameter>
    

    This will create an installer environment variable called createdb that will contain the value "1" if the user answered "yes" or the value "0" if the user answered "no" to the question. You can later refer to the content of the variable using ${createdb}, for example in a <isTrue> or <isFalse> rule:

    <showInfo text="The user selected Yes">
       <ruleList>
         <isTrue>
            <value>${createdb}</value>
         </isTrue>
        </ruleList>
    </showInfo>
    

    boolean.xml


    <project>
        <shortName>sample</shortName>
        <fullName>Sample Project</fullName>
        <version>1.0</version>
        <installerFilename></installerFilename>
        <readmeFile></readmeFile>
        <licenseFile></licenseFile>
        <wrapLicenseFileText>1</wrapLicenseFileText>
        <leftImage></leftImage>
        <logoImage></logoImage>
        <splashImage></splashImage>
        <defaultLanguage></defaultLanguage>
        <allowLanguageSelection>0</allowLanguageSelection>
        <postInstallationScript></postInstallationScript>
        <postInstallationScriptArguments></postInstallationScriptArguments>
        <showPostInstallationScriptResult>0</showPostInstallationScriptResult>
        <preUninstallationScript></preUninstallationScript>
        <preUninstallationScriptArguments></preUninstallationScriptArguments>
        <allowedLanguages></allowedLanguages>
        <cdromDirectory>${product_shortname}-${product_version}-cdrom</cdromDirectory>
        <cdromDiskSize>700000000</cdromDiskSize>
        <cdromFirstDiskSize>650000000</cdromFirstDiskSize>
        <defaultUnixDirectoryPermissions>755</defaultUnixDirectoryPermissions>
        <defaultUnixFilePermissions>644</defaultUnixFilePermissions>
        <outputDirectory>${installbuilder_install_root}/output</outputDirectory>
        <projectSchemaVersion>1.2</projectSchemaVersion>
        <saveRelativePaths>0</saveRelativePaths>
        <slideShowLoop>1</slideShowLoop>
        <slideShowTiming>5</slideShowTiming>
        <startMenuGroupName>${product_fullname}</startMenuGroupName>
        <style>standard</style>
        <uninstallerDirectory></uninstallerDirectory>
        <validatorProgram></validatorProgram>
        <componentList>
            <component>
                <name>default</name>
                <description>Default Component</description>
                <canBeEdited>1</canBeEdited>
                <detailedDescription></detailedDescription>
                <selected>1</selected>
                <show>1</show>
                <desktopShortcutList/>
                <folderList>
                    <folder>
                        <description>Program Files</description>
                        <destination>${installdir}</destination>
                        <name>programfiles</name>
                        <platforms>all</platforms>
                        <shortcutList>
                            <shortcut>
                                <comment>Uninstall</comment>
                                <exec>${installdir}/uninstall</exec>
                                <icon></icon>
                                <name>Uninstall ${product_fullname}</name>
                                <path>${installdir}</path>
                                <platforms>all</platforms>
                                <windowsExec>${installdir}/uninstall.exe</windowsExec>
                                <windowsExecArgs></windowsExecArgs>
                                <windowsIcon></windowsIcon>
                                <windowsPath>${installdir}</windowsPath>
                            </shortcut>
                        </shortcutList>
                    </folder>
                    <folder>
                        <description>Program Files</description>
                        <destination>${installdir}</destination>
                        <name>programfileslinux</name>
                        <platforms>linux</platforms>
                    </folder>
                    <folder>
                        <description>Program Files</description>
                        <destination>${installdir}</destination>
                        <name>programfileswindows</name>
                        <platforms>windows</platforms>
                    </folder>
                </folderList>
                <startMenuShortcutList>
                    <startMenuShortcut>
                        <comment>Uninstall ${product_fullname}</comment>
                        <name>Uninstall ${product_fullname}</name>
                        <windowsExec>${installdir}/uninstall.exe</windowsExec>
                        <windowsExecArgs></windowsExecArgs>
                        <windowsIcon></windowsIcon>
                        <windowsPath>${installdir}/</windowsPath>
                    </startMenuShortcut>
                </startMenuShortcutList>
            </component>
        </componentList>
        <customLanguageFileList/>
        <fileList/>
        <parameterList>
            <directoryParameter>
                <name>installdir</name>
                <title></title>
                <description>Installer.Parameter.installdir.description</description>
                <explanation>Installer.Parameter.installdir.explanation</explanation>
                <value></value>
                <default>${platform_install_prefix}/${product_shortname}-${product_version}</default>
                <allowEmptyValue>0</allowEmptyValue>
                <ask>yes</ask>
                <cliOptionName>prefix</cliOptionName>
                <leftImage></leftImage>
                <mustBeWritable>yes</mustBeWritable>
                <mustExist>0</mustExist>
                <width>40</width>
            </directoryParameter>
            <booleanParameter>
                <name>createdb</name>
                <ask>yes</ask>
                <default>1</default>
                <title>Database Install</title>
                <explanation>Should initial database structure and data be created?</explanation>
                <value>1</value>
            </booleanParameter>
        </parameterList>
        <platformOptionsList/>
        <postInstallationActionList/>
        <preBuildActionList/>
        <preInstallationActionList/>
        <preUninstallationActionList/>
        <slideShowImageList/>
    </project>
    

Please sign in to leave a comment.