-
Notifications
You must be signed in to change notification settings - Fork 5
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Initial release of Rhino5SR2 skeleton files
- Loading branch information
root
committed
Dec 21, 2015
1 parent
a4894e3
commit 89ed6cc
Showing
8 changed files
with
512 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,99 @@ | ||
; 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/ | ||
|
||
|
||
Set $MsiId$ = '{4957F252-7E6B-4A89-967C-191E2D6459F5}' | ||
Set $UninstallProgram$ = $InstallDir$ + "\uninstall.exe" | ||
|
||
Message "Uninstalling " + $ProductId$ + " ..." | ||
|
||
if FileExists($UninstallProgram$) | ||
comment "Uninstall program found, starting uninstall" | ||
Winbatch_uninstall | ||
sub_check_exitcode | ||
endif | ||
if not (GetRegistryStringValue64("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $MsiId$ + "] DisplayName") = "") | ||
comment "MSI id " + $MsiId$ + " found in registry, starting msiexec to uninstall" | ||
DosInAnIcon_stopservice | ||
Winbatch_uninstall_msi | ||
sub_check_exitcode | ||
endif | ||
|
||
comment "Delete files" | ||
Files_uninstall /32Bit | ||
|
||
comment "Cleanup registry" | ||
Registry_uninstall /32Bit | ||
|
||
comment "Delete program shortcuts" | ||
LinkFolder_uninstall | ||
|
||
[DosInAnIcon_stopservice] | ||
@echo off | ||
net stop "McNeel Update Service 5.0" | ||
|
||
[Winbatch_uninstall] | ||
; Choose one of the following examples as basis for program uninstall | ||
; | ||
; === Nullsoft Scriptable Install System ================================================================ | ||
; "$UninstallProgram$" /S | ||
; | ||
; === Inno Setup ======================================================================================== | ||
; "$UninstallProgram$" /silent /norestart /SUPPRESSMSGBOXES | ||
|
||
|
||
[Winbatch_uninstall_msi] | ||
msiexec /x $MsiId$ /qb! REBOOT=ReallySuppress | ||
|
||
[Files_uninstall] | ||
; Example for recursively deleting the installation directory (don't forget the trailing backslash): | ||
; | ||
; delete -sf "$InstallDir$\" | ||
|
||
[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$ | ||
[Sub_check_exitcode] | ||
comment "Test for installation success via exit code" | ||
set $ExitCode$ = getLastExitCode | ||
; informations to exit codes see | ||
; http://msdn.microsoft.com/en-us/library/aa372835(VS.85).aspx | ||
; http://msdn.microsoft.com/en-us/library/aa368542.aspx | ||
if ($ExitCode$ = "0") | ||
comment "Looks good: setup program gives exitcode zero" | ||
else | ||
comment "Setup program gives a exitcode unequal zero: " + $ExitCode$ | ||
if ($ExitCode$ = "1605") | ||
comment "ERROR_UNKNOWN_PRODUCT 1605 This action is only valid for products that are currently installed." | ||
comment "Uninstall of a not installed product failed - no problem" | ||
else | ||
if ($ExitCode$ = "1641") | ||
comment "looks good: setup program gives exitcode 1641" | ||
comment "ERROR_SUCCESS_REBOOT_INITIATED 1641 The installer has initiated a restart. This message is indicative of a success." | ||
else | ||
if ($ExitCode$ = "3010") | ||
comment "looks good: setup program gives exitcode 3010" | ||
comment "ERROR_SUCCESS_REBOOT_REQUIRED 3010 A restart is required to complete the install. This message is indicative of a success." | ||
else | ||
logError "Fatal: Setup program gives an unknown exitcode unequal zero: " + $ExitCode$ | ||
isFatalError | ||
endif | ||
endif | ||
endif | ||
endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,244 @@ | ||
; 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://www.opsi.org/credits/ | ||
|
||
[Actions] | ||
requiredWinstVersion >= "4.10.8.6" | ||
|
||
DefVar $MsiId$ | ||
DefVar $UninstallProgram$ | ||
DefVar $LogDir$ | ||
DefVar $ProductId$ | ||
DefVar $MinimumSpace$ | ||
DefVar $InstallDir$ | ||
DefVar $ExitCode$ | ||
DefVar $LicenseRequired$ | ||
DefVar $LicenseKey$ | ||
DefVar $LicensePool$ | ||
|
||
DefVar $WORKGROUP_NODE$ | ||
DefVar $RMA_CDKEY$ | ||
Set $RMA_CDKEY$ = GetProductProperty("RMA_CDKEY","") | ||
DefVar $ZOOSERVER$ | ||
Set $ZOOSERVER$ = GetProductProperty("ZOOSERVER","") | ||
DefVar $INSTALL_LANG$ | ||
Set $INSTALL_LANG$ = GetProductProperty("INSTALL_LANG","DE") | ||
|
||
DefVar $INSTALL_STRING$ | ||
|
||
If not($RMA_CDKEY$ = "") | ||
Set $INSTALL_STRING$ = "RMA_CDKEY=" + $RMA_CDKEY$ | ||
Set $WORKGROUP_NODE$ = "0" | ||
else | ||
Set $INSTALL_STRING$ = "ZOO_SERVER=" + $ZOOSERVER$ | ||
Set $WORKGROUP_NODE$ = "1" | ||
endif | ||
|
||
Set $LogDir$ = "%SystemDrive%\tmp" | ||
|
||
; ---------------------------------------------------------------- | ||
; - Please edit the following values - | ||
; ---------------------------------------------------------------- | ||
;$ProductId$ should be the name of the product in opsi | ||
; therefore please: only lower letters, no umlauts, | ||
; no white space use '-' as a seperator | ||
Set $ProductId$ = "rhino5sr2" | ||
Set $MinimumSpace$ = "250 MB" | ||
; the path were we find the product after the installation | ||
Set $InstallDir$ = "%ProgramFiles64Dir%\Rhinoceros 5 (64-bit)" | ||
Set $LicenseRequired$ = "false" | ||
Set $LicensePool$ = "p_" + $ProductId$ | ||
; ---------------------------------------------------------------- | ||
|
||
if not(HasMinimumSpace ("%SystemDrive%", $MinimumSpace$)) | ||
LogError "Not enough space on %SystemDrive%, " + $MinimumSpace$ + " on drive %SystemDrive% needed for " + $ProductId$ | ||
isFatalError | ||
; Stop process and set installation status to failed | ||
else | ||
comment "Show product picture" | ||
ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$ | ||
|
||
if FileExists("%ScriptPath%\delsub64.ins") | ||
comment "Start uninstall sub section" | ||
Sub "%ScriptPath%\delsub64.ins" | ||
endif | ||
|
||
Message "Installing " + $ProductId$ + " ..." | ||
|
||
if $LicenseRequired$ = "true" | ||
comment "Licensing required, reserve license and get license key" | ||
Sub_get_licensekey | ||
endif | ||
|
||
comment "Start setup program" | ||
Winbatch_install /64Bit | ||
Sub_check_exitcode | ||
|
||
comment "Disable Update Service" | ||
Registry_no_update_service_for_all /SysNative /AllNTUserDats | ||
|
||
comment "Copy files" | ||
Files_install /32Bit | ||
|
||
comment "Patch Registry" | ||
Registry_install /32Bit | ||
|
||
comment "Create shortcuts" | ||
LinkFolder_install | ||
|
||
comment "Test for installation success" | ||
; Test if software marked as installed in registry | ||
; if (GetRegistryStringValue32("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}] DisplayName") = "") | ||
; logError "Fatal: After Installation 32 bit [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}] not found" | ||
; isFatalError | ||
; else | ||
; comment "Successful Installation" | ||
; endif | ||
|
||
endif | ||
|
||
[Winbatch_install] | ||
; 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 ================================================================ | ||
; "%ScriptPath%\Setup.exe" /S | ||
; | ||
; === MSI package ======================================================================================= | ||
; You may use the parameter PIDKEY=$Licensekey$ | ||
; msiexec /i "%ScriptPath%\some.msi" /l* "$LogDir$\$ProductId$.install_log.txt" /qb! ALLUSERS=2 REBOOT=ReallySuppress | ||
; | ||
; === InstallShield + MSI===================================================================================== | ||
; Attention: The path to the log file should not contain any whitespaces | ||
; "%ScriptPath%\setup.exe" /s /v" /l* $LogDir$\$ProductId$.install_log.txt /qb! ALLUSERS=2 REBOOT=ReallySuppress" | ||
; "%ScriptPath%\setup.exe" /s /v" /qb! ALLUSERS=2 REBOOT=ReallySuppress" | ||
; | ||
; === InstallShield ===================================================================================== | ||
; Create setup.iss answer file by running: setup.exe /r /f1"c:\setup.iss" | ||
; "%ScriptPath%\setup.exe" /s /sms /f1"%ScriptPath%\setup.iss" /f2"$LogDir$\$ProductId$.install_log.txt" | ||
; | ||
; === Inno Setup ======================================================================================== | ||
; http://unattended.sourceforge.net/InnoSetup_Switches_ExitCodes.html | ||
; You may create setup answer file by: setup.exe /SAVEINF="filename" | ||
; You may use an answer file by the parameter /LOADINF="filename" | ||
; "%ScriptPath%\setup.exe" /sp- /silent /norestart /SUPPRESSMSGBOXES | ||
msiexec.exe /i"%ScriptPath%\files\rh50Release_x64_en-us_5.2.30328.21415.msi" WORKGROUP_NODE=$WORKGROUP_NODE$ $INSTALL_STRING$ INSTALL_$INSTALL_LANG$=1 /l* "$LogDir$\$ProductId$.install_log.txt" /qb | ||
[Registry_no_update_service_for_all] | ||
openkey [Software\McNeel\McNeelUpdate] | ||
set "Enabled" = REG_SZ:"False" | ||
[Files_install] | ||
; Example of recursively copying some files into the installation directory: | ||
; | ||
; copy -s "%ScriptPath%\files\*.*" "$InstallDir$" | ||
[Registry_install] | ||
; Example of setting some values of an registry key: | ||
; | ||
; openkey [HKEY_LOCAL_MACHINE\Software\$ProductId$] | ||
; set "name1" = "some string value" | ||
; set "name2" = REG_DWORD:0001 | ||
; set "name3" = REG_BINARY:00 af 99 cd | ||
|
||
[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: $InstallDir$ | ||
; 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: <some_param> | ||
; working_dir: $InstallDir$ | ||
; icon_file: <path to icon file> | ||
; icon_index: 2 | ||
; end_link | ||
|
||
[Sub_get_licensekey] | ||
if opsiLicenseManagementEnabled | ||
comment "License management is enabled and will be used" | ||
|
||
comment "Trying to get a license key" | ||
Set $LicenseKey$ = demandLicenseKey ($LicensePool$) | ||
; If there is an assignment of exactly one licensepool to the product the following call is possible: | ||
; Set $LicenseKey$ = demandLicenseKey ("", $ProductId$) | ||
; | ||
; 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 ("", "", $WindowsSoftwareId$) | ||
|
||
DefVar $ServiceErrorClass$ | ||
set $ServiceErrorClass$ = getLastServiceErrorClass | ||
comment "Error class: " + $ServiceErrorClass$ | ||
|
||
if $ServiceErrorClass$ = "None" | ||
comment "Everything fine, we got the license key '" + $LicenseKey$ + "'" | ||
else | ||
if $ServiceErrorClass$ = "LicenseConfigurationError" | ||
LogError "Fatal: license configuration must be corrected" | ||
LogError getLastServiceErrorMessage | ||
isFatalError | ||
else | ||
if $ServiceErrorClass$ = "LicenseMissingError" | ||
LogError "Fatal: required license is not supplied" | ||
isFatalError | ||
endif | ||
endif | ||
endif | ||
else | ||
LogError "Fatal: license required, but license management not enabled" | ||
isFatalError | ||
endif | ||
|
||
|
||
[Sub_check_exitcode] | ||
comment "Test for installation success via exit code" | ||
set $ExitCode$ = getLastExitCode | ||
; informations to exit codes see | ||
; http://msdn.microsoft.com/en-us/library/aa372835(VS.85).aspx | ||
; http://msdn.microsoft.com/en-us/library/aa368542.aspx | ||
if ($ExitCode$ = "0") | ||
comment "Looks good: setup program gives exitcode zero" | ||
else | ||
comment "Setup program gives a exitcode unequal zero: " + $ExitCode$ | ||
if ($ExitCode$ = "1605") | ||
comment "ERROR_UNKNOWN_PRODUCT 1605 This action is only valid for products that are currently installed." | ||
comment "Uninstall of a not installed product failed - no problem" | ||
else | ||
if ($ExitCode$ = "1641") | ||
comment "looks good: setup program gives exitcode 1641" | ||
comment "ERROR_SUCCESS_REBOOT_INITIATED 1641 The installer has initiated a restart. This message is indicative of a success." | ||
else | ||
if ($ExitCode$ = "3010") | ||
comment "looks good: setup program gives exitcode 3010" | ||
comment "ERROR_SUCCESS_REBOOT_REQUIRED 3010 A restart is required to complete the install. This message is indicative of a success." | ||
else | ||
logError "Fatal: Setup program gives an unknown exitcode unequal zero: " + $ExitCode$ | ||
isFatalError | ||
endif | ||
endif | ||
endif | ||
endif |
Oops, something went wrong.