This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
userspace:mozilla_firefox_esr [2012/11/17 20:00] islam |
userspace:mozilla_firefox_esr [2021/08/23 08:37] (current) |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | Inhalt Ordner | + | **[root]** |
| + | * Folder **" | ||
| + | * **" | ||
| + | * **Firefox.png** (160x160 pixel Firefox Logo) | ||
| - | - " | + | * **delsub.ins** |
| - | Download URL: http://www.mozilla.org/en-US/firefox/ | + | <file winst delsub.ins> |
| + | ; Copyright (c) uib gmbh (www.uib.de) | ||
| + | ; This sourcecode is owned by uib gmbh | ||
| + | ; and published under the Terms of the General Public License. | ||
| + | ; credits: http://www.opsi.org/credits/ | ||
| - | Firefox.png | ||
| - | (160x160 pixel Firefox Logo) | ||
| - | delsub.ins | + | ;Set $MsiId32$ = ' |
| + | Set $UninstallProgram32$ = $InstallDir32$ + " | ||
| + | ;Set $MsiId64$ = ' | ||
| + | Set $UninstallProgram64$ = $InstallDir64$ + " | ||
| - | setup.ins | + | if (($INST_SystemType$ = "x86 System" |
| + | Message " | ||
| - | uninstall.ins | + | if FileExists($UninstallProgram32$) |
| + | comment " | ||
| + | Killtask " | ||
| + | Winbatch_uninstall_32 | ||
| + | sub_check_exitcode | ||
| + | endif | ||
| + | if not (GetRegistryStringValue32(" | ||
| + | comment "MSI id " + $MsiId32$ + " found in registry, starting msiexec to uninstall" | ||
| + | Killtask " | ||
| + | Winbatch_uninstall_msi_32 | ||
| + | sub_check_exitcode | ||
| + | endif | ||
| + | |||
| + | comment " | ||
| + | Files_uninstall_32 /32Bit | ||
| + | comment " | ||
| + | Registry_uninstall /32Bit | ||
| + | endif | ||
| + | if ($INST_SystemType$ = "64 Bit System" | ||
| + | Message " | ||
| + | if FileExists($UninstallProgram64$) | ||
| + | comment " | ||
| + | Killtask " | ||
| + | Winbatch_uninstall_64 | ||
| + | sub_check_exitcode | ||
| + | endif | ||
| + | |||
| + | if not (GetRegistryStringValue64(" | ||
| + | comment "MSI id " + $MsiId64$ + " found in registry, starting msiexec to uninstall" | ||
| + | Killtask " | ||
| + | Winbatch_uninstall_msi_64 | ||
| + | sub_check_exitcode | ||
| + | endif | ||
| + | |||
| + | comment " | ||
| + | Files_uninstall_64 /64Bit | ||
| + | comment " | ||
| + | Registry_uninstall /64Bit | ||
| + | endif | ||
| + | |||
| + | comment " | ||
| + | LinkFolder_uninstall | ||
| + | |||
| + | [Winbatch_uninstall_32] | ||
| + | |||
| + | ;" | ||
| + | " | ||
| + | ;Category, Link in Category, Folder in Startmenu | ||
| + | ;" | ||
| + | |||
| + | ; Choose one of the following examples as basis for program uninstall | ||
| + | ; | ||
| + | ; === Nullsoft Scriptable Install System ================================================================ | ||
| + | ; " | ||
| + | ; | ||
| + | ; === Inno Setup ======================================================================================== | ||
| + | ; " | ||
| + | |||
| + | |||
| + | [Winbatch_uninstall_msi_32] | ||
| + | msiexec /x $MsiId32$ /qb! REBOOT=ReallySuppress | ||
| + | |||
| + | [Files_uninstall_32] | ||
| + | ; Example for recursively deleting the installation directory (don't forget the trailing backslash): | ||
| + | ; | ||
| + | ; delete -sf " | ||
| + | |||
| + | [Winbatch_uninstall_64] | ||
| + | |||
| + | ;" | ||
| + | " | ||
| + | ;Category, Link in Category, Folder in Startmenu | ||
| + | ;" | ||
| + | |||
| + | ; Choose one of the following examples as basis for program uninstall | ||
| + | ; | ||
| + | ; === Nullsoft Scriptable Install System ================================================================ | ||
| + | ; " | ||
| + | ; | ||
| + | ; === Inno Setup ======================================================================================== | ||
| + | ; " | ||
| + | |||
| + | |||
| + | [Winbatch_uninstall_msi_64] | ||
| + | msiexec /x $MsiId64$ /qb! REBOOT=ReallySuppress | ||
| + | |||
| + | [Files_uninstall_64] | ||
| + | ; Example for recursively deleting the installation directory (don't forget the trailing backslash): | ||
| + | ; | ||
| + | ; delete -sf " | ||
| + | |||
| + | [Registry_uninstall] | ||
| + | ; Example of deleting a registry key: | ||
| + | ; | ||
| + | ; deletekey [HKEY_LOCAL_MACHINE\Software\$ProductId$] | ||
| + | |||
| + | [LinkFolder_uninstall] | ||
| + | ; Example of deleting a folder from AllUsers startmenu: | ||
| + | ; | ||
| + | ; set_basefolder common_programs | ||
| + | ; delete_subfolder $ProductId$ | ||
| + | ; | ||
| + | ; Example of deleting a shortcut from AllUsers desktop: | ||
| + | ; | ||
| + | ; set_basefolder common_desktopdirectory | ||
| + | ; set_subfolder "" | ||
| + | ; delete_element $ProductId$ | ||
| + | |||
| + | set_basefolder common_programs | ||
| + | set_subfolder " | ||
| + | delete_element " | ||
| + | delete_subfolder " | ||
| + | |||
| + | [Sub_check_exitcode] | ||
| + | comment "Test for installation success via exit code" | ||
| + | set $ExitCode$ = getLastExitCode | ||
| + | ; informations to exit codes see | ||
| + | ; http:// | ||
| + | ; http:// | ||
| + | if ($ExitCode$ = " | ||
| + | comment "Looks good: setup program gives exitcode zero" | ||
| + | else | ||
| + | comment "Setup program gives a exitcode unequal zero: " + $ExitCode$ | ||
| + | if ($ExitCode$ = " | ||
| + | comment " | ||
| + | comment " | ||
| + | else | ||
| + | if ($ExitCode$ = " | ||
| + | comment "looks good: setup program gives exitcode 1641" | ||
| + | comment " | ||
| + | else | ||
| + | if ($ExitCode$ = " | ||
| + | comment "looks good: setup program gives exitcode 3010" | ||
| + | comment " | ||
| + | else | ||
| + | logError " | ||
| + | isFatalError | ||
| + | endif | ||
| + | endif | ||
| + | endif | ||
| + | endif | ||
| + | |||
| + | |||
| + | </ | ||
| + | |||
| + | * **setup.ins** | ||
| + | <file winst setup.ins> | ||
| + | ; Copyright (c) uib gmbh (www.uib.de) | ||
| + | ; This sourcecode is owned by uib | ||
| + | ; and published under the Terms of the General Public License. | ||
| + | ; credits: http:// | ||
| + | |||
| + | [Actions] | ||
| + | requiredWinstVersion >= " | ||
| + | |||
| + | DefVar $MsiId32$ | ||
| + | DefVar $UninstallProgram32$ | ||
| + | DefVar $MsiId64$ | ||
| + | DefVar $UninstallProgram64$ | ||
| + | DefVar $LogDir$ | ||
| + | DefVar $ProductCat$ | ||
| + | DefVar $ProductId$ | ||
| + | DefVar $ProductVersion$ | ||
| + | DefVar $AllUsersDesktopLink$ | ||
| + | DefVar $AllUsersStartMenuDir$ | ||
| + | DefVar $MinimumSpace$ | ||
| + | DefVar $InstallDir32$ | ||
| + | DefVar $InstallDir64$ | ||
| + | DefVar $ExitCode$ | ||
| + | DefVar $LicenseRequired$ | ||
| + | DefVar $LicenseKey$ | ||
| + | DefVar $LicensePool$ | ||
| + | DefVar $INST_SystemType$ | ||
| + | DefVar $INST_architecture$ | ||
| + | |||
| + | Set $INST_SystemType$ = GetSystemType | ||
| + | set $INST_architecture$ = GetProductProperty(" | ||
| + | |||
| + | |||
| + | Set $LogDir$ = " | ||
| + | |||
| + | ; ---------------------------------------------------------------- | ||
| + | ; - Please edit the following values | ||
| + | ; ---------------------------------------------------------------- | ||
| + | ; | ||
| + | ; therefore please: only lower letters, no umlauts, | ||
| + | ; no white space use ' | ||
| + | Set $ProductCat$ | ||
| + | Set $ProductId$ | ||
| + | Set $ProductVersion$ | ||
| + | Set $AllUsersDesktopLink$ = " | ||
| + | Set $AllUsersStartMenuDir$ = " | ||
| + | Set $MinimumSpace$ | ||
| + | ; the path were we find the product after the installation | ||
| + | Set $InstallDir32$ | ||
| + | Set $InstallDir64$ | ||
| + | Set $LicenseRequired$ = " | ||
| + | Set $LicensePool$ | ||
| + | ; ---------------------------------------------------------------- | ||
| + | |||
| + | if not(HasMinimumSpace (" | ||
| + | LogError "Not enough space on %SystemDrive%, | ||
| + | isFatalError | ||
| + | ; Stop process and set installation status to failed | ||
| + | else | ||
| + | comment "Show product picture" | ||
| + | ShowBitmap " | ||
| + | |||
| + | if FileExists(" | ||
| + | comment "Start uninstall sub section" | ||
| + | Sub " | ||
| + | endif | ||
| + | |||
| + | if $LicenseRequired$ = " | ||
| + | comment " | ||
| + | Sub_get_licensekey | ||
| + | endif | ||
| + | |||
| + | comment " | ||
| + | |||
| + | if (($INST_SystemType$ = "x86 System" | ||
| + | Message " | ||
| + | comment "Start setup program" | ||
| + | Winbatch_install_32 | ||
| + | Sub_check_exitcode | ||
| + | comment "Copy files" | ||
| + | Files_install_32 /32Bit | ||
| + | comment "Patch Registry" | ||
| + | Registry_install /32Bit | ||
| + | comment " | ||
| + | LinkFolder_install | ||
| + | endif | ||
| + | |||
| + | if ($INST_SystemType$ = "64 Bit System" | ||
| + | Message " | ||
| + | comment "Start setup program" | ||
| + | Winbatch_install_64 | ||
| + | Sub_check_exitcode | ||
| + | comment "Copy files" | ||
| + | Files_install_64 /64Bit | ||
| + | comment "Patch Registry" | ||
| + | Registry_install /64Bit | ||
| + | comment " | ||
| + | LinkFolder_install | ||
| + | endif | ||
| + | |||
| + | endif | ||
| + | |||
| + | [Winbatch_install_32] | ||
| + | |||
| + | " | ||
| + | ;" | ||
| + | |||
| + | ; Choose one of the following examples as basis for your installation | ||
| + | ; You can use $LicenseKey$ var to pass a license key to the installer | ||
| + | ; | ||
| + | ; === Nullsoft Scriptable Install System ================================================================ | ||
| + | ; " | ||
| + | ; | ||
| + | ; === MSI package ======================================================================================= | ||
| + | ; You may use the parameter PIDKEY=$Licensekey$ | ||
| + | ; msiexec /i " | ||
| + | ; | ||
| + | ; === InstallShield + MSI===================================================================================== | ||
| + | ; Attention: The path to the log file should not contain any whitespaces | ||
| + | ; " | ||
| + | ; " | ||
| + | ; | ||
| + | ; === InstallShield ===================================================================================== | ||
| + | ; Create setup.iss answer file by running: setup.exe /r / | ||
| + | ; " | ||
| + | ; | ||
| + | ; === Inno Setup ======================================================================================== | ||
| + | ; http:// | ||
| + | ; You may create setup answer file by: setup.exe / | ||
| + | ; You may use an answer file by the parameter / | ||
| + | ; " | ||
| + | |||
| + | |||
| + | [Files_install_32] | ||
| + | ; Example of recursively copying some files into the installation directory: | ||
| + | ; | ||
| + | ; copy -s " | ||
| + | copy " | ||
| + | copy " | ||
| + | |||
| + | [Winbatch_install_64] | ||
| + | |||
| + | " | ||
| + | ;" | ||
| + | |||
| + | ; Choose one of the following examples as basis for your installation | ||
| + | ; You can use $LicenseKey$ var to pass a license key to the installer | ||
| + | ; | ||
| + | ; === Nullsoft Scriptable Install System ================================================================ | ||
| + | ; " | ||
| + | ; | ||
| + | ; === MSI package ======================================================================================= | ||
| + | ; You may use the parameter PIDKEY=$Licensekey$ | ||
| + | ; msiexec /i " | ||
| + | ; | ||
| + | ; === InstallShield + MSI===================================================================================== | ||
| + | ; Attention: The path to the log file should not contain any whitespaces | ||
| + | ; " | ||
| + | ; " | ||
| + | ; | ||
| + | ; === InstallShield ===================================================================================== | ||
| + | ; Create setup.iss answer file by running: setup.exe /r / | ||
| + | ; " | ||
| + | ; | ||
| + | ; === Inno Setup ======================================================================================== | ||
| + | ; http:// | ||
| + | ; You may create setup answer file by: setup.exe / | ||
| + | ; You may use an answer file by the parameter / | ||
| + | ; " | ||
| + | |||
| + | [Files_install_64] | ||
| + | ; Example of recursively copying some files into the installation directory: | ||
| + | ; | ||
| + | ; copy -s " | ||
| + | copy " | ||
| + | copy " | ||
| + | |||
| + | [Registry_install] | ||
| + | ; Example of setting some values of an registry key: | ||
| + | ; | ||
| + | ; openkey [HKEY_LOCAL_MACHINE\Software\$ProductId$] | ||
| + | ; set " | ||
| + | ; set " | ||
| + | ; set " | ||
| + | |||
| + | [LinkFolder_install] | ||
| + | ; Example of deleting a folder from AllUsers startmenu: | ||
| + | ; | ||
| + | ; set_basefolder common_programs | ||
| + | ; delete_subfolder $ProductId$ | ||
| + | ; | ||
| + | ; Example of creating an shortcut to the installed exe in AllUsers startmenu: | ||
| + | ; | ||
| + | ; set_basefolder common_programs | ||
| + | ; set_subfolder $ProductId$ | ||
| + | ; | ||
| + | ; set_link | ||
| + | ; name: $ProductId$ | ||
| + | ; target: <path to the program> | ||
| + | ; parameters: | ||
| + | ; working_dir: | ||
| + | ; icon_file: | ||
| + | ; icon_index: | ||
| + | ; end_link | ||
| + | ; | ||
| + | ; Example of creating an shortcut to the installed exe on AllUsers desktop: | ||
| + | ; | ||
| + | ; set_basefolder common_desktopdirectory | ||
| + | ; set_subfolder "" | ||
| + | ; | ||
| + | ; set_link | ||
| + | ; name: $ProductId$ | ||
| + | ; target: <path to the program> | ||
| + | ; parameters: | ||
| + | ; working_dir: | ||
| + | ; icon_file: <path to icon file> | ||
| + | ; icon_index: | ||
| + | ; end_link | ||
| + | |||
| + | | ||
| + | | ||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | | ||
| + | set_subfolder "" | ||
| + | | ||
| + | |||
| + | |||
| + | ; set_basefolder common_programs | ||
| + | ; set_subfolder " | ||
| + | |||
| + | ; set_link | ||
| + | ; name: $AllUsersDesktopLink$ | ||
| + | ; target: " | ||
| + | ; | ||
| + | ; icon_file: " | ||
| + | ; icon_index: | ||
| + | ; end_link | ||
| + | |||
| + | |||
| + | [Sub_get_licensekey] | ||
| + | comment " | ||
| + | |||
| + | comment " | ||
| + | Set $LicenseKey$ = demandLicenseKey ($LicensePool$) | ||
| + | ; If there is an assignment of exactly one licensepool to the product the following call is possible: | ||
| + | ; Set $LicenseKey$ = demandLicenseKey ("", | ||
| + | ; | ||
| + | ; If there is an assignment of a license pool to a windows software id, it is possible to use: | ||
| + | ; DefVar $WindowsSoftwareId$ | ||
| + | ; $WindowsSoftwareId$ = " | ||
| + | ; Set $LicenseKey$ = demandLicenseKey ("", | ||
| + | |||
| + | DefVar $ServiceErrorClass$ | ||
| + | set $ServiceErrorClass$ = getLastServiceErrorClass | ||
| + | comment "Error class: " + $ServiceErrorClass$ | ||
| + | |||
| + | if $ServiceErrorClass$ = " | ||
| + | comment " | ||
| + | else | ||
| + | if $ServiceErrorClass$ = " | ||
| + | LogError " | ||
| + | LogError getLastServiceErrorMessage | ||
| + | isFatalError | ||
| + | else | ||
| + | if $ServiceErrorClass$ = " | ||
| + | LogError " | ||
| + | isFatalError | ||
| + | endif | ||
| + | endif | ||
| + | endif | ||
| + | |||
| + | [Sub_check_exitcode] | ||
| + | comment "Test for installation success via exit code" | ||
| + | set $ExitCode$ = getLastExitCode | ||
| + | ; informations to exit codes see | ||
| + | ; http:// | ||
| + | ; http:// | ||
| + | if ($ExitCode$ = " | ||
| + | comment "Looks good: setup program gives exitcode zero" | ||
| + | else | ||
| + | comment "Setup program gives a exitcode unequal zero: " + $ExitCode$ | ||
| + | if ($ExitCode$ = " | ||
| + | comment " | ||
| + | comment " | ||
| + | else | ||
| + | if ($ExitCode$ = " | ||
| + | comment "looks good: setup program gives exitcode 1641" | ||
| + | comment " | ||
| + | else | ||
| + | if ($ExitCode$ = " | ||
| + | comment "looks good: setup program gives exitcode 3010" | ||
| + | comment " | ||
| + | else | ||
| + | logError " | ||
| + | isFatalError | ||
| + | endif | ||
| + | endif | ||
| + | endif | ||
| + | endif | ||
| + | |||
| + | |||
| + | </ | ||
| + | * **uninstall.ins** | ||
| + | <file winst uninstall.ins> | ||
| + | ; Copyright (c) uib gmbh (www.uib.de) | ||
| + | ; This sourcecode is owned by uib gmbh | ||
| + | ; and published under the Terms of the General Public License. | ||
| + | ; credits: http:// | ||
| + | |||
| + | [Actions] | ||
| + | requiredWinstVersion >= " | ||
| + | |||
| + | DefVar $MsiId32$ | ||
| + | DefVar $UninstallProgram32$ | ||
| + | DefVar $MsiId64$ | ||
| + | DefVar $UninstallProgram64$ | ||
| + | DefVar $LogDir$ | ||
| + | DefVar $ExitCode$ | ||
| + | DefVar $ProductId$ | ||
| + | DefVar $InstallDir32$ | ||
| + | DefVar $InstallDir64$ | ||
| + | DefVar $LicenseRequired$ | ||
| + | DefVar $LicensePool$ | ||
| + | DefVar $INST_SystemType$ | ||
| + | DefVar $INST_architecture$ | ||
| + | |||
| + | Set $INST_SystemType$ = GetSystemType | ||
| + | set $INST_architecture$ = GetProductProperty(" | ||
| + | |||
| + | |||
| + | Set $LogDir$ = " | ||
| + | |||
| + | ; ---------------------------------------------------------------- | ||
| + | ; - Please edit the following values | ||
| + | ; ---------------------------------------------------------------- | ||
| + | Set $ProductId$ | ||
| + | Set $InstallDir32$ | ||
| + | Set $InstallDir64$ | ||
| + | Set $LicenseRequired$ = " | ||
| + | Set $LicensePool$ | ||
| + | ; ---------------------------------------------------------------- | ||
| + | |||
| + | |||
| + | comment "Show product picture" | ||
| + | ShowBitmap " | ||
| + | |||
| + | Message " | ||
| + | |||
| + | if FileExists(" | ||
| + | comment "Start uninstall sub section" | ||
| + | Sub " | ||
| + | endif | ||
| + | |||
| + | if $LicenseRequired$ = " | ||
| + | comment " | ||
| + | Sub_free_license | ||
| + | endif | ||
| + | |||
| + | [Sub_free_license] | ||
| + | comment " | ||
| + | |||
| + | comment " | ||
| + | DefVar $result$ | ||
| + | Set $result$ = FreeLicense($LicensePool$) | ||
| + | ; If there is an assignment of a license pool to the product, it is possible to use | ||
| + | ; Set $result$ = FreeLicense("", | ||
| + | ; | ||
| + | ; If there is an assignment of a license pool to a windows software id, it is possible to use | ||
| + | ; DefVar $WindowsSoftwareId$ | ||
| + | ; $WindowsSoftwareId$ = " | ||
| + | ; set $result$ = FreeLicense("", | ||
| + | |||
| + | |||
| + | |||
| + | </ | ||