This shows you the differences between two versions of the page.
userspace:thinprint [2012/04/28 23:39] frisoft created |
userspace:thinprint [2021/08/23 08:37] |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | === ThinPrint Client 8.0 MSI-Package === | ||
- | this script deployed the .print Client engine for Citrix. You must defined a product dependency to the Citrix Plugin for hosted solutions | ||
- | Dieses Script verteilt die .print Client Komponente von ThinPrint. In der Produktdefinition müssen Sie eine Produktabhängigkeit zu den Ctrix Plugin für gehostete Anwendungen erstellen | ||
- | |||
- | testet under Windows 7/32 Bit / Getestet unter Windows 7 32 Bit | ||
- | |||
- | the 64 Bit section is under construction / Die 64 Bit Sektion ist noch in Arbeit | ||
- | |||
- | questions to / Fragen an // | ||
- | |||
- | loading the licensed components / Herunterlader der zu lizensierenden Konponenten [[http:// | ||
- | |||
- | the product picture are downloaded from Internet / Das Produktbild ist aus dem Internet herunterzuladen | ||
- | |||
- | the scripts are unversal scripts, they are customized for many sloutions / Die Scripts sind Unversal-Scripts, | ||
- | |||
- | the scripts are based of a Solution from forum member // | ||
- | |||
- | |||
- | |||
- | my directory strcture / Meine Verzeichnisstruktur | ||
- | < | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | === setup.ins === | ||
- | <code winst> | ||
- | [Initial] | ||
- | LogLevel=9 | ||
- | ; Log Errors in Logfile but don't abort: | ||
- | ExitOnError=false | ||
- | ; Show syntax errors in the script: | ||
- | ScriptErrorMessages=on | ||
- | ; Dont trace step by step through the script: | ||
- | TraceMode=off | ||
- | ; let started programs run in front of the winst window | ||
- | StayOnTop=false | ||
- | |||
- | |||
- | [Actions] | ||
- | requiredWinstVersion >= " | ||
- | |||
- | DefVar $MsiId32$ | ||
- | DefVar $UninstallProgram32$ | ||
- | DefVar $MsiId64$ | ||
- | DefVar $UninstallProgram64$ | ||
- | DefVar $LogDir$ | ||
- | DefVar $ProductId$ | ||
- | DefVar $MinimumSpace$ | ||
- | DefVar $InstallDir32$ | ||
- | DefVar $InstallDir64$ | ||
- | Defvar $InstallTmpDir$ | ||
- | DefVar $ExitCode$ | ||
- | DefVar $LicenseRequired$ | ||
- | DefVar $LicenseKey$ | ||
- | DefVar $LicensePool$ | ||
- | DefVar $INST_SystemType$ | ||
- | DefVar $INST_architecture$ | ||
- | defvar $INSTVersion$ | ||
- | DefVar $Version$ | ||
- | DefVar $Inst_Cmd32$ | ||
- | DefVar $Inst_Cmd64$ | ||
- | DefVar $Inst_Prg$ | ||
- | DefVar $Uninst_Cmd$ | ||
- | DefVar $Uninst_Prg$ | ||
- | DefVar $InstDest$ | ||
- | |||
- | 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 $ProductId$ | ||
- | Set $Version$ | ||
- | Set $MinimumSpace$ | ||
- | ; the path were we find the product after the installation | ||
- | Set $InstallDir32$ | ||
- | Set $InstallDir64$ | ||
- | Set $LicenseRequired$ = " | ||
- | Set $LicensePool$ | ||
- | Set $Inst_Prg$ = " | ||
- | Set $Inst_Cmd32$ = '/qb /i " | ||
- | Set $Inst_Cmd64$ = '/qb /i " | ||
- | Set $Uninst_Cmd$ = "" | ||
- | Set $Uninst_Prg$ = "" | ||
- | ; ---------------------------------------------------------------- | ||
- | |||
- | ; | ||
- | |||
- | comment "Show product picture" | ||
- | ShowBitmap " | ||
- | |||
- | if not(HasMinimumSpace (" | ||
- | LogError "Not enough space on %SystemDrive%, | ||
- | isFatalError | ||
- | ; Stop process and set installation status to failed | ||
- | else | ||
- | |||
- | ; if FileExists(" | ||
- | ; | ||
- | ; Sub " | ||
- | ; endif | ||
- | |||
- | if $LicenseRequired$ = " | ||
- | comment " | ||
- | Sub_get_licensekey | ||
- | endif | ||
- | |||
- | comment " | ||
- | |||
- | if (($INST_SystemType$ = "x86 System" | ||
- | Message " | ||
- | comment "Start setup program" | ||
- | if (FileExists(" | ||
- | comment " | ||
- | Winbatch_install_32 | ||
- | endif | ||
- | ; comment "patch the Userprofil" | ||
- | ; Set $InstDest$ = " | ||
- | ; Files_Patch_UserProfil | ||
- | ; if not(fileExists(" | ||
- | ; comment "patch the default User5Profile" | ||
- | ; Set $InstDest$ = " | ||
- | ; Files_Patch_UserProfil | ||
- | ; endif | ||
- | comment "ceck the return arguments" | ||
- | Sub_check_exitcode | ||
- | endif | ||
- | |||
- | if ($INST_SystemType$ = "64 Bit System" | ||
- | Message " | ||
- | comment "Start setup program" | ||
- | if not (FileExists(" | ||
- | comment " | ||
- | Winbatch_install_64 | ||
- | endif | ||
- | ; comment "patch the Userprofil" | ||
- | ; Set $InstDest$ = " | ||
- | ; Files_Patch_UserProfil | ||
- | ; if not(fileExists(" | ||
- | ; comment "patch the default User5Profile" | ||
- | ; Set $InstDest$ = " | ||
- | ; Files_Patch_UserProfil | ||
- | ; endif | ||
- | comment "ceck the return arguments" | ||
- | Sub_check_exitcode | ||
- | 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 ================================================================ | ||
- | " | ||
- | |||
- | [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 ================================================================ | ||
- | " | ||
- | |||
- | [Files_delete_32] | ||
- | ; Example of recursively copying some files into the installation directory: | ||
- | ; | ||
- | ;copy " | ||
- | |||
- | [Files_Install_Copy] | ||
- | ; copy the installationCD to the local HD | ||
- | |||
- | ;copy -s " | ||
- | ;copy " | ||
- | |||
- | [Files_Patch_UserProfil] | ||
- | |||
- | ;copy -s " | ||
- | ;copy -s " | ||
- | |||
- | [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 "that are currently installed." | ||
- | 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 " | ||
- | comment " | ||
- | else | ||
- | logError " | ||
- | logError $ExitCode$ | ||
- | isFatalError | ||
- | endif | ||
- | endif | ||
- | endif | ||
- | endif | ||
- | </ | ||
- | |||
- | === uninstall.ins === | ||
- | <code winst> | ||
- | [Initial] | ||
- | LogLevel=9 | ||
- | ; Log Errors in Logfile but don't abort: | ||
- | ExitOnError=false | ||
- | ; Show syntax errors in the script: | ||
- | ScriptErrorMessages=on | ||
- | ; Dont trace step by step through the script: | ||
- | TraceMode=off | ||
- | ; let started programs run in front of the winst window | ||
- | StayOnTop=false | ||
- | |||
- | [Actions] | ||
- | requiredWinstVersion >= " | ||
- | |||
- | DefVar $MsiId32$ | ||
- | DefVar $UninstallProgram32$ | ||
- | DefVar $MsiId64$ | ||
- | DefVar $UninstallProgram64$ | ||
- | DefVar $Version$ | ||
- | DefVar $MinimumSpace$ | ||
- | DefVar $LogDir$ | ||
- | DefVar $ExitCode$ | ||
- | DefVar $ProductId$ | ||
- | DefVar $InstallDir32$ | ||
- | DefVar $InstallDir64$ | ||
- | Defvar $InstallTmpDir$ | ||
- | DefVar $LicenseRequired$ | ||
- | DefVar $LicensePool$ | ||
- | DefVar $INST_SystemType$ | ||
- | DefVar $INST_architecture$ | ||
- | DefVar $Uninst_Cmd$ | ||
- | DefVar $Uninst_Prg$ | ||
- | DefVar $INSTVersion$ | ||
- | |||
- | Set $INST_SystemType$ = GetSystemType | ||
- | set $INST_architecture$ = GetProductProperty(" | ||
- | |||
- | |||
- | Set $LogDir$ = " | ||
- | |||
- | ; ---------------------------------------------------------------- | ||
- | ; - Please edit the following values | ||
- | ; ---------------------------------------------------------------- | ||
- | Set $ProductId$ | ||
- | Set $Version$ | ||
- | Set $MinimumSpace$ | ||
- | Set $InstallDir32$ | ||
- | Set $InstallDir64$ | ||
- | Set $LicenseRequired$ = " | ||
- | Set $LicensePool$ | ||
- | Set $Uninst_Prg$ | ||
- | Set $Uninst_Cmd$ | ||
- | ; the correct uninstall command you are looked in the registry under the Hive | ||
- | ; | ||
- | ; ---------------------------------------------------------------- | ||
- | |||
- | comment "Show product picture" | ||
- | ShowBitmap " | ||
- | |||
- | Message " | ||
- | |||
- | if (FileExists(" | ||
- | comment "Start uninstall sub section" | ||
- | Sub " | ||
- | comment " | ||
- | ; | ||
- | |||
- | else | ||
- | comment "modul not installed" | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | |||
- | if $LicenseRequired$ = " | ||
- | comment " | ||
- | Sub_free_license | ||
- | endif | ||
- | |||
- | ExitWindows /reboot | ||
- | |||
- | [Files_Delete_UserProfil] | ||
- | |||
- | delete -s " | ||
- | delete -s " | ||
- | delete -s " | ||
- | delete -s " | ||
- | |||
- | [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("", | ||
- | </ | ||
- | |||
- | === delsub.ins === | ||
- | <code winst> | ||
- | if (($INST_SystemType$ = "x86 System" | ||
- | Message " | ||
- | comment " | ||
- | Winbatch_uninstall_32 | ||
- | sub_check_exitcode | ||
- | endif | ||
- | |||
- | if ($INST_SystemType$ = "64 Bit System" | ||
- | Message $ProductId$ + " ist nur fuer 32 Bit..." | ||
- | comment " | ||
- | isFatalError | ||
- | endif | ||
- | |||
- | [Winbatch_uninstall_32] | ||
- | |||
- | $Uninst_Prg$ $Uninst_Cmd$ | ||
- | |||
- | [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 | ||
- | if ($ExitCode$ = " | ||
- | comment "looks good: setup program means that the install-Source are corrupted" | ||
- | else | ||
- | logError " | ||
- | isFatalError | ||
- | endif | ||
- | endif | ||
- | endif | ||
- | endif | ||
- | endif | ||
- | </ |