User Tools

Site Tools


userspace:origin

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

userspace:origin [2013/12/13 08:08]
tobias [What you need]
userspace:origin [2021/08/23 08:37]
Line 1: Line 1:
-\\ 
-**This is a master copy. Click on <edit this page> and copy the contents under "snipp". Then create the page for your own script, paste the content to the editor and modify it as you need it.** 
  
-====== Origin Ver. 9.1 MSI Installer ====== 
- 
- 
-Tested with opsi X.Y.Z\\ 
-requiredWinstVersion >= W.X.Y.Z\\ 
-Files can be downloaded at Download here: [[http://www.originlab.com/index.aspx?go=products&pid=1852|Download]] 
- 
-By  <click on the button signature>  
- 
-Tree:\\ 
-<code> 
-├── CLIENT_DATA 
-│   ├── additional 
-│   │   ├── additional_actions.opsiinc 
-│   │   ├── additional_sections.opsiinc 
-│   ├── config.opsiinc 
-│   ├── delsub.ins 
-│   ├── files 
-│   │   ├── MSI 
-│   │   │   ├── Origin91_x64 
-│   │   │   │   └── setup.msi 
-│   │   │   ├── Origin91_x86 
-│   │   │   │   └── setup.msi 
-│   │   │   ├── vcreddist_x64_2008_x64 
-│   │   │   │   ├── vc_red.cab 
-│   │   │   │   └── vc_red.msi 
-│   │   │   ├── vcredist_x64-2012_x64 
-│   │   │   │   ├── vcRuntimeAdditional_amd64 
-│   │   │   │   │   ├── cab1.cab 
-│   │   │   │   │   └── vc_runtimeAdditional_x64.msi 
-│   │   │   │   └── vcRuntimeMinimum_amd64 
-│   │   │   │       ├── cab1.cab 
-│   │   │   │       └── vc_runtimeMinimum_x64.msi 
-│   │   │   ├── vcredist_x86-2008_x86_x64 
-│   │   │   │   ├── vc_red.cab 
-│   │   │   │   └── vc_red.msi 
-│   │   │   └── vcredist_x86-2012_x86_x64 
-│   │   │       ├── vcRuntimeAdditional_x86 
-│   │   │       │   ├── cab1.cab 
-│   │   │       │   └── vc_runtimeAdditional_x86.msi 
-│   │   │       └── vcRuntimeMinimum_x86 
-│   │   │           ├── cab1.cab 
-│   │   │           └── vc_runtimeMinimum_x86.msi 
-│   │   └── use_server.lic 
-│   ├── origin9.1.png 
-│   ├── setup.ins 
-│   ├── uninstall.ins 
-│   └── vars.opsiinc 
-├── OPSI 
-│   ├── control 
-│   ├── postinst 
-│   └── preinst 
-</code> 
- 
-==== What you need ==== 
-  *the MSI Installer from Additive (64bit + 32bit) 
-  *the MSI files from VISUAL C++ 2012 REDISTRIBUTABLE (64bit + 32bit) [[http://http://www.applepie.se/extract-msi-from-visual-c-2012-redistributable|How to get the MSI Installer:]] 
-  *the MSI files from VISUAL C++ 2008 REDISTRIBUTABLE  
- 
- 
- 
-==== additional_actions.opsiinc ==== 
-<code winst> 
-; Insert additional Sektions (only the section name, not the section) 
-if ($INST_SystemType$ = "x86 System") 
- Message "Lizensiere Origin 9.1" 
- files_lic_x86 
- Message "Installiere benoetigte Laufzeitumgebungen" 
- winbatch_vcredist_x86 
- 
-else 
- Message "Lizensiere Origin 9.1" 
- files_lic_x64 
- Message "Installiere benoetigte Laufzeitumgebungen" 
- winbatch_vcredist_x64 
-  
-endif 
-</code> 
- 
- 
-==== additional_sections.opsiinc ==== 
-<code winst> 
-; Insert the section, not the section name !!! 
-[files_lic_x86] 
- copy -s "%ScriptPath%\files\use_server.lic" "%ProgramFilesDir%\Originlab\Origin 9.1\License" 
- 
-[files_lic_x64] 
- copy -s "%ScriptPath%\files\use_server.lic" "%ProgramFiles64Dir%\Originlab\Origin 9.1\License" 
- 
-[winbatch_vcredist_x86] 
-msiexec -i %scriptpath%\files\MSI\vcredist_x86-2008_x86_x64\vc_red.msi -passive 
-msiexec -i %scriptpath%\files\MSI\vcredist_x86-2012_x86_x64\vcRuntimeMinimum_x86\vc_runtimeMinimum_x86.msi -passive ADDEPLOY=1 
-msiexec -i %scriptpath%\files\MSI\vcredist_x86-2012_x86_x64\vcRuntimeAdditional_x86\vc_runtimeAdditional_x86.msi -passive ADDEPLOY=1 
- 
- 
-[winbatch_vcredist_x64] 
-msiexec -i %scriptpath%\files\MSI\vcreddist_x64_2008_x64\vc_red.msi -passive 
-msiexec -i %scriptpath%\files\MSI\vcredist_x86-2008_x86_x64\vc_red.msi -passive 
- 
-msiexec -i %scriptpath%\files\MSI\vcredist_x64-2012_x64\vcRuntimeMinimum_amd64\vc_runtimeMinimum_x64.msi -passive ADDEPLOY=1 
-msiexec -i %scriptpath%\files\MSI\vcredist_x64-2012_x64\vcRuntimeAdditional_amd64\vc_runtimeAdditional_x64.msi -passive ADDEPLOY=1 
- 
-msiexec -i %scriptpath%\files\MSI\vcredist_x86-2012_x86_x64\vcRuntimeMinimum_x86\vc_runtimeMinimum_x86.msi -passive ADDEPLOY=1 
-msiexec -i %scriptpath%\files\MSI\vcredist_x86-2012_x86_x64\vcRuntimeAdditional_x86\vc_runtimeAdditional_x86.msi -passive ADDEPLOY=1</code> 
- 
-==== config.opsiinc ==== 
-<code winst> 
-; ---------------------------------------------------------------- 
-; -  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$         = "Origin9.1" 
-Set $MinimumSpace$      = "500 MB" 
-set $setupcommand32$    =  "msiexec /i %ScriptPath%\files\MSI\Origin91_x86\setup.msi  /passive ALLUSERS=2 REBOOT=ReallySuppress PIDKEY=SF8T5-3089-7902407" 
-set $setupcommand64$    =  "msiexec /i %ScriptPath%\files\MSI\Origin91_x64\setup.msi  /passive ALLUSERS=2 REBOOT=ReallySuppress PIDKEY=SF8T5-3089-7902407" 
- 
-Set $INST_SystemType$   = GetSystemType 
-set $INST_architecture$ = GetProductProperty("install_architecture","system specific") 
-Set $LogDir$            = "%SystemDrive%\tmp" 
- 
- 
- 
-; ---------------------------------------------------------------- 
-; -  Currently installing MSIs 
-; ---------------------------------------------------------------- 
- 
-set $installed_MSI_32$          = createStringList (' ') 
- 
-set $installed_MSI_64$          = createStringList ('{3C28BFD4-90C7-3138-87EF-418DC16E9598}','{5AF4E09F-5C9B-3AAF-B731-544D3DC821DD}','{5FCE6D76-F5DC-37AB-B2B8-22AB8CEDB1D4}') 
- 
-set $installed_MSI_Both$        = createStringList ('{912C907D-E18C-4560-859B-2B1EA969BAB5}','{E824E81C-80A4-3DFF-B5F9-4842A9FF5F7F}','{6C772996-BFF3-3C8C-860B-B3D48FF05D65}','{9BE518E6-ECC6-35A9-88E4-87755C07200F}') 
- 
- 
- 
-; ---------------------------------------------------------------- 
-; -  MSIID MAPP / Aktuelle MSIIDs 
-; ---------------------------------------------------------------- 
-;32 
-; - 
- 
-;64 
-;Origin91_x64 - {912C907D-E18C-4560-859B-2B1EA969BAB5} 
-;vcredist_x64-2012 Additional - {3C28BFD4-90C7-3138-87EF-418DC16E9598} 
-;vcredist_x64-2012 Minimum - {5AF4E09F-5C9B-3AAF-B731-544D3DC821DD} 
-;vcredist_x64_2008 - {5FCE6D76-F5DC-37AB-B2B8-22AB8CEDB1D4} 
- 
-;Both    
-;Origin91_x86 - {912C907D-E18C-4560-859B-2B1EA969BAB5} 
-;vcredist_x86-2012 Additional - {6C772996-BFF3-3C8C-860B-B3D48FF05D65} 
-;vcredist_x86-2012 Minimum - {E824E81C-80A4-3DFF-B5F9-4842A9FF5F7F} 
-;vcredist_x86-2008 - {9BE518E6-ECC6-35A9-88E4-87755C07200F} 
- 
- 
- 
- 
-; ---------------------------------------------------------------- 
-; -  MSIs from outdated packages 
-; ---------------------------------------------------------------- 
-set $MSI_32$    = createStringList ('{9DE4251D-D6A0-445B-A006-42F20D46CB62}') 
- 
-set $MSI_64$    = createStringList (' ') 
- 
-set $MSI_Both$  = createStringList (' ') 
- 
- 
- 
-; ---------------------------------------------------------------- 
-; -  Additional Configuration 
-; ---------------------------------------------------------------- 
-set $checktask$         = "false" 
-set $killtask$          = "false" 
-set $SearchProcess$     = createStringList ('cmd.exe') 
- 
- 
- 
-</code> 
- 
-==== delsub.ins ==== 
-<code winst> 
-; ---------------------------------------------------------------- 
-; - 32Bit                            - 
-; ---------------------------------------------------------------- 
- 
- 
- 
-if ($INST_SystemType$ = "x86 System") 
- Message "Uninstalling " + $ProductId$ + " 32 Bit..." 
- 
- 
-        if not (GetRegistryStringValue32("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $ID$ + "] DisplayName") = "") 
- comment "MSI id " + $ID$ + " found in registry, starting msiexec to uninstall" 
- Winbatch_uninstall_msi 
- sub_check_exitcode 
-        endif 
-endif 
- 
- 
- 
-; ---------------------------------------------------------------- 
-; - 64Bit                         - 
-; ---------------------------------------------------------------- 
- 
- 
- 
-if ($INST_SystemType$ = "64 Bit System") 
- Message "Uninstalling " + $ProductId$ + " 64 Bit..." 
- 
- 
-        if not (GetRegistryStringValue64("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $ID$ + "] DisplayName") = "") 
- comment "MSI id " + $ID$ + " found in registry, starting msiexec to uninstall" 
- Winbatch_uninstall_msi 
- sub_check_exitcode 
-        endif 
-endif 
- 
- 
-; ---------------------------------------------------------------- 
-; - Both                         - 
-; ---------------------------------------------------------------- 
- 
- Message "Uninstalling " + $ProductId$ + " Both..." 
- 
- 
-if not (GetRegistryStringValue("[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\" + $ID$ + "] DisplayName") = "") 
- comment "MSI id " + $ID$ + " found in registry, starting msiexec to uninstall" 
- Winbatch_uninstall_msi 
- sub_check_exitcode 
-endif 
- 
- 
- 
- 
-[Winbatch_uninstall_msi] 
-msiexec /x $ID$ /qb! REBOOT=ReallySuppress 
- 
- 
- 
- 
-[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 
- 
-</code> 
- 
-==== setup.ins ==== 
-<code winst> 
-[Actions] 
- 
- 
-SetLogLevel=6 
- 
-requiredWinstVersion >= "4.10.8.6" 
- 
-; Include configuration 
-include_insert "%scriptpath%\vars.opsiinc" 
-include_insert "%scriptpath%\config.opsiinc" 
- 
- 
-; ---------------------------------------------------------------- 
-; - PreCheck & Settings 
-; ---------------------------------------------------------------- 
- 
- 
-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$ 
-endif  
- 
- 
-if ( $checktask$  = "true") 
-        for %s% in $SearchProcess$ do sub_checktask 
-else 
-        comment "Checktask is off" 
-endif 
- 
- 
- 
- 
-; ---------------------------------------------------------------- 
-; - Remove Aktionen 
-; ---------------------------------------------------------------- 
- 
-comment "Remove MSI from System" 
- 
-if ($INST_SystemType$ = "x86 System") 
-    for %s% in $MSI_32$ do sub_open_dellsub 
- 
-else 
- 
-    for %s% in $MSI_64$ do sub_open_dellsub 
- 
-endif 
- 
-    for %s% in $MSI_Both$ do sub_open_dellsub 
- 
- 
- 
- 
- 
-; ---------------------------------------------------------------- 
-; - Setup Aktionen 
-; ---------------------------------------------------------------- 
- 
-if ($INST_SystemType$ = "x86 System" 
- Message "Installing " + $ProductId$ + " 32 Bit..." 
- comment "Start setup program" 
- Winbatch_install_32 
- Sub_check_exitcode 
-endif 
- 
- 
-if ($INST_SystemType$ = "64 Bit System" 
- Message "Installing " + $ProductId$ + " 64 Bit..." 
- comment "Start setup program" 
- Winbatch_install_64 
- Sub_check_exitcode 
-endif 
- 
-include_append "%scriptpath%/additional/additional_sections.opsiinc"  
-include_insert "%scriptpath%/additional/additional_actions.opsiinc" 
- 
- 
- 
- 
- 
-; ---------------------------------------------------------------- 
-; - Sektionen 
-; ---------------------------------------------------------------- 
- 
- 
- 
-[Winbatch_install_32] 
- 
-$setupcommand32$ 
- 
- 
- 
-[Winbatch_install_64] 
- 
-$setupcommand64$ 
- 
- 
-[sub_open_dellsub] 
-set $ID$ = "%s%" 
-Sub "%ScriptPath%\delsub.ins" 
- 
- 
-[sub_checktask] 
-set $currentchecktask$ = "%s%" 
-set $tasklist$ = getOutStreamFromSection('DosInAnIcon_checkprocess') 
-set $processVAR$ = unquote(takeString(1,$tasklist$), '"') 
- 
-if ($processVAR$ = $currentchecktask$) 
-Message = "Prozess gefunden" 
- if ($killtask$ = "true") 
- killtask $currentchecktask$ 
- else 
- message "killtask is set to false" 
-  
- endif 
- if ($fatalerror$ = "true") 
- pause  $userfail$ 
- isFatalError 
-  
- else 
- message "fatalError is set to false" 
- endif 
-  
-message  "Prozess nicht gefunden - do nothing" 
-endif 
-  
- 
-[DosInAnIcon_checkprocess] 
-@echo off 
-TASKLIST /FI "IMAGENAME eq $subvar$" /fo CSV 
- 
- 
-[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 
-</code> 
- 
-==== uninstall.ins ==== 
-<code winst> 
-[Actions] 
- 
-SetLogLevel=6 
- 
-requiredWinstVersion >= "4.10.8.6" 
- 
-include_insert "%scriptpath%\vars.opsiinc" 
-include_insert "%scriptpath%\config.opsiinc" 
- 
-comment "Show product picture" 
-ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$ 
-  
- 
- 
-comment "Remove MSI from System" 
- 
-if ($INST_SystemType$ = "x86 System") 
-    for %s% in $installed_MSI_32$ do sub_open_dellsub 
- 
-else 
- 
-    for %s% in $installed_MSI_64$ do sub_open_dellsub 
- 
-endif 
- 
-for %s% in $installed_MSI_Both$ do sub_open_dellsub 
- 
- 
- 
-[sub_open_dellsub] 
-set $ID$ = "%s%" 
-Sub "%ScriptPath%\delsub.ins" 
-</code> 
- 
-==== vars.ins ==== 
-<code winst> 
- 
-; ---------------------------------------------------------------- 
-; - DefVar / DefString  
-; ---------------------------------------------------------------- 
- 
-DefVar $MsiId32$ 
-DefVar $MsiId64$ 
-DefVar $LogDir$ 
-DefVar $ProductId$   
-DefVar $MinimumSpace$ 
-DefVar $InstallDir32$ 
-DefVar $InstallDir64$ 
-DefVar $ExitCode$ 
-DefVar $INST_SystemType$ 
-DefVar $INST_architecture$ 
-DefVar $setupcommand32$ 
-DefVar $setupcommand64$ 
-DefVar $ID$ 
-DefVar $subvar$ 
-DefVar $killtask$ 
-DefVar $checktask$ 
- 
- 
-DefStringList $MSI_32$ 
-DefStringList $MSI_64$ 
-DefStringList $MSI_Both$ 
-DefStringlist $installed_MSI_Both$ 
-DefStringList $installed_MSI_32$ 
-DefStringList $installed_MSI_64$ 
-DefStringList $processlist$ 
-DefStringList $process$ 
-DefStringList $process_unquote$ 
-DefStringList $SearchProcess$ 
-DefStringList $currentchecktask$ 
-DefStringList $processVAR$ 
- 
- 
-</code> 
userspace/origin.txt · Last modified: 2021/08/23 08:37 (external edit)