This is an old revision of the document!
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.
Tested with opsi X.Y.Z
requiredWinstVersion >= W.X.Y.Z
Files can be downloaded at Download here: Download
By <click on the button signature>
Tree:
├── 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
; 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
; 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
; ---------------------------------------------------------------- ; - 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')
; ---------------------------------------------------------------- ; - 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
;this is my vbs-script... echo click on "edit this page" to see the complete source.
;this is my vbs-script... echo click on "edit this page" to see the complete source.
;this is my vbs-script... echo click on "edit this page" to see the complete source.