From 7524ae12c1122132d792d496a836ba9d8e228911 Mon Sep 17 00:00:00 2001 From: Mario Fetka Date: Fri, 21 Feb 2014 11:34:08 +0100 Subject: [PATCH] Drop windows xp support and switch to windows 7+ --- CLIENT_DATA/activate-win.png | Bin 0 -> 29477 bytes CLIENT_DATA/ms-activation.vbs | 7 -- CLIENT_DATA/service_batch.bat | 4 - CLIENT_DATA/setup.ins | 161 ++++++++++++++++++++++++++++ CLIENT_DATA/setup32.ins | 193 ---------------------------------- OPSI/changelog.txt | 42 +++++++- OPSI/control | 45 ++++++-- 7 files changed, 237 insertions(+), 215 deletions(-) create mode 100644 CLIENT_DATA/activate-win.png delete mode 100644 CLIENT_DATA/ms-activation.vbs delete mode 100644 CLIENT_DATA/service_batch.bat create mode 100644 CLIENT_DATA/setup.ins delete mode 100644 CLIENT_DATA/setup32.ins diff --git a/CLIENT_DATA/activate-win.png b/CLIENT_DATA/activate-win.png new file mode 100644 index 0000000000000000000000000000000000000000..c660d15d40ef284c9e520082f73d2fd96a22a2b1 GIT binary patch literal 29477 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 0 then - 'If necessary, save/set proxy - Obj.ActivateOnline() - 'If necessary, restore proxy - end if -next \ No newline at end of file diff --git a/CLIENT_DATA/service_batch.bat b/CLIENT_DATA/service_batch.bat deleted file mode 100644 index 0ea8b75..0000000 --- a/CLIENT_DATA/service_batch.bat +++ /dev/null @@ -1,4 +0,0 @@ -rundll32 user32.dll LockWorkStation %windir% -ms-activation.vbs -sc config opsiclientd start= auto -net start opsiclientd diff --git a/CLIENT_DATA/setup.ins b/CLIENT_DATA/setup.ins new file mode 100644 index 0000000..80f8e02 --- /dev/null +++ b/CLIENT_DATA/setup.ins @@ -0,0 +1,161 @@ +; 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.11.1.1" + +DefVar $LogDir$ +DefVar $ProductId$ +DefVar $LicenseRequired$ +DefVar $LicenseKey$ +DefVar $LicensePool$ +DefVar $poolOrKey$ +DefVar $source$ +DefVar $httpproxy$ + +Set $LogDir$ = "%SystemDrive%\tmp" + +Set $ProductId$ = "activate-win" + + + +; ---------------------------------------------------------------- +; see: +; http://technet.microsoft.com/en-us/library/ff793433.aspx + +if GetMsVersionInfo < "6" + LogError "This is for NT 6 (Vista) and above" + isFatalError +else + + comment "Show product picture" + ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$ + + + Message "Installing " + $ProductId$ + " ..." + + set $poolOrKey$ = GetProductProperty("Poolid-or-Licensekey","") + set $source$ = GetProductProperty("method","only-activate") + set $httpproxy$ = GetProductProperty("httpproxy","") + + comment "Check Status" + DosInAnIcon_status_win7 winst /sysnative + + if not ( $httpproxy$ = "" ) + comment "enable HTTP proxy, required for auto-activating" + DosInAnIcon_setproxy_win7 winst /sysnative + endif + + if not ($source$ = "only-activate") + comment " we need a key..." + if $source$ = "opsi License management" + Set $LicenseRequired$ = "true" + Set $LicensePool$ = $poolOrKey$ + comment " get key from license management with poolid "+$LicensePool$ + comment "Licensing required, reserve license and get license key" + Sub_get_licensekey + else + Set $LicenseRequired$ = "false" + Set $LicensePool$ = "" + set $LicenseKey$ = $poolOrKey$ + comment " use key "+$LicenseKey$ + endif + + comment "Set the Key" + DosInAnIcon_set_key winst /sysnative + + comment "Check Status" + DosInAnIcon_status_win7 winst /sysnative + endif + + comment "Start Activation" + DosInAnIcon_activate winst /sysnative + + comment "Check Status" + DosInAnIcon_status_win7 winst /sysnative + +endif + +[DosInAnIcon_set_key] +cscript //b c:\windows\system32\slmgr.vbs /ipk $LicenseKey$ + +[DosInAnIcon_activate] +cscript //b c:\windows\system32\slmgr.vbs /ato + +[DosInAnIcon_status_win7] +cscript c:\windows\system32\slmgr.vbs /dli + + + +[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 + +[DosInAnIcon_setproxy_win7] +;netsh.exe winhttp set proxy proxy:3128 ";*.mynet.local" +netsh.exe winhttp set proxy $httpproxy$ diff --git a/CLIENT_DATA/setup32.ins b/CLIENT_DATA/setup32.ins deleted file mode 100644 index 7dbd8c5..0000000 --- a/CLIENT_DATA/setup32.ins +++ /dev/null @@ -1,193 +0,0 @@ -; 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 $Proxy_Port$ -DefVar $Flag$ -DefVar $WinstRegKey$ -DefVar $MsiId$ -DefVar $UninstallProgram$ -DefVar $LogDir$ -DefVar $ProductId$ -DefVar $MinimumSpace$ -DefVar $InstallDir$ -DefVar $ExitCode$ -DefVar $LicenseRequired$ -DefVar $LicenseKey$ -DefVar $LicensePool$ - -Set $LogDir$ = "%SystemDrive%\tmp" -Set $WinstRegKey$ = "HKLM\SOFTWARE\opsi.org\winst" -Set $Flag$ = GetRegistryStringValue32("["+$WinstRegKey$+"] "+"RebootFlag") -Set $Proxy_Port$ = "pubproxy:3128" - -; The token BUILDER_VARIABLES will be replaced by opsi-builder.sh -; and adds the following variables: -; from builder-product.cfg : all variables definded by attribute WINST[index] -; from builder-product.cfg : VENDOR PN VERSION RELEASE PRIORITY ADVICE TYPE -; from opsi-builder.cfg : CREATOR_TAG CREATOR_NAME CREATOR_EMAIL -; auto generated winst-variables -; $IconFile$: path to product picture -; -DefVar $VENDOR$ -Set $VENDOR$ = "microsoft.com" -DefVar $PN$ -Set $PN$ = "windows.activation" -DefVar $VERSION$ -Set $VERSION$ = "1" -DefVar $RELEASE$ -Set $RELEASE$ = "5" -DefVar $PRIORITY$ -Set $PRIORITY$ = "0" -DefVar $ADVICE$ -Set $ADVICE$ = "" -DefVar $TYPE$ -Set $TYPE$ = "public" -DefVar $CREATOR_TAG$ -Set $CREATOR_TAG$ = "dt" -DefVar $CREATOR_NAME$ -Set $CREATOR_NAME$ = "Dennis Trinks" -DefVar $CREATOR_EMAIL$ -Set $CREATOR_EMAIL$ = "dennis.trinks@dtnet.de" -DefVar $IconFile$ -Set $IconFile$ = "%ScriptPath%\windows.activation.png" - - -; ---------------------------------------------------------------- -; - 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$ = "windows.activation" -Set $MinimumSpace$ = "1 MB" -; the path were we find the product after the installation -Set $InstallDir$ = "%ProgramFiles32Dir%\" -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%\delsub32.ins") - comment "Start uninstall sub section" - Sub "%ScriptPath%\delsub32.ins" - endif - - Message "Installing " + $ProductId$ + " ..." - - if $LicenseRequired$ = "true" - comment "Licensing required, reserve license and get license key" - Sub_get_licensekey - endif - - if $Flag$ = "" - Set $Flag$ = "1" - Registry_SaveRebootFlag - DOSInAnIcon_AddActivationAdmin - DOSInAnIcon_deactOpsiSrv -; DOSInAnIcon_SetProxy - Files_install_servicebatch - Files_install - Registry_SetAutoadmin - Registry_SetRunOnce - ExitWindows /ImmediateReboot - Endif - - if $Flag$ = "1" - Set $Flag$ = "2" - DOSInAnIcon_deactOpsiSrv - Registry_SetRunOnce - Registry_SaveRebootFlag - ExitWindows /ImmediateReboot - Endif - - if $Flag$ = "2" - Set $Flag$ = "3" - Registry_SaveRebootFlag - Registry_DisableAutoadmin - ExitWindows /ImmediateReboot - Endif - - - if $Flag$ = "3" - Registry_DeleteRebootFlag - DOSInAnIcon_DeleteActivationAdmin - Endif -endif - -[Files_install_servicebatch] -copy "%ScriptPath%\service_batch.bat" "C:\tmp" - -[Files_install] -copy "%ScriptPath%\ms-activation.vbs" %System% - -[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 ================================================================ - -ms-activation.vbs - -[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$ - isFatalError -endif - -[Registry_SaveRebootFlag] -openKey [$WinstRegKey$] -set "RebootFlag" = "$Flag$" - -[Registry_DeleteRebootFlag] -openKey [$WinstRegKey$] -DeleteVar "RebootFlag" - -[Registry_SetAutoadmin] -openkey [HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] -set "DefaultUserName"="activationadmin" -set "DefaultPassword"="4ct1vat!0n" -set "DefaultDomainName"="%PCName%" -set "AutoAdminLogon"="1" - -[Registry_DisableAutoadmin] -openkey [HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon] -set "DefaultUserName"="" -set "DefaultPassword"="" -set "AutoAdminLogon"="0" - -[Registry_SetRunOnce] -openkey [HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce] -set "OpsiService"="C:\tmp\service_batch.bat" - -[DOSInAnIcon_AddActivationAdmin] -net user activationadmin 4ct1vat!0n /add -net localgroup Administratoren /add activationadmin - -[DOSInAnIcon_DeleteActivationAdmin] -net user activationadmin /delete - -[DOSInAnIcon_SetProxy] -proxycfg -p $Proxy_Port$ - -[DOSInAnIcon_deactOpsiSrv] -sc config opsiclientd start= disabled diff --git a/OPSI/changelog.txt b/OPSI/changelog.txt index bc69317..42a54cc 100644 --- a/OPSI/changelog.txt +++ b/OPSI/changelog.txt @@ -1,2 +1,40 @@ -Don't add cahngelog entries here! -It get autogenerated by the opsi-builder.sh \ No newline at end of file +activate-win (1.0-6) stable; urgency=low + * added proxysettings + +-- bardo wolf 03 Sep 2012 + +activate-win (1.0-5) stable; urgency=low + + * property: 'Poolid or Licensekey' renamed to licensekey from property + - modified the tooltip from property method. + * modified productId in setup.ins + * added winflag.png as product-picture + + -- erol ueluekmen Fr, 10 Aug 2012 14:01:53 +0200 + +activate-win (1.0-4) stable; urgency=low + + * property: 'Poolid or Licensekey' to decied which source + * property: 'license source' to get Poolid or Licensekey + + -- detlef oertel Fr, 09 Dec 2011 16:01:53 +0200 + + +activate-win (1.0-3) stable; urgency=low + + * added poolid productProperty + + -- erol ueluekmen Mon, 19 Sep 2011 16:01:53 +0200 + +activate-win (1.0-2) stable; urgency=low + + * sysnativ + + -- bardo wolf Mon, 19 Sep 2011 15:01:53 +0200 + +opsi-template (1.0-1) stable; urgency=low + + * initial + + -- detlef oertel Mon, 05 Sep 2011 16:01:53 +0200 + diff --git a/OPSI/control b/OPSI/control index 7759f62..29965e6 100644 --- a/OPSI/control +++ b/OPSI/control @@ -1,23 +1,50 @@ [Package] -version: RELEASE +version: 6 depends: incremental: False [Product] type: localboot -id: windows.activation -name: windows.activation -description: Activating MS-OS (XP/2003) -advice: ADVICE -version: VERSION -priority: PRIORITY +id: activate-win +name: Windows Activation +description: Tries to activate this Windows installation +advice: +version: 1.0 +priority: 0 licenseRequired: False productClasses: -setupScript: setup32.ins -uninstallScript: uninstall32.ins +setupScript: setup.ins +uninstallScript: updateScript: alwaysScript: onceScript: customScript: userLoginScript: +[ProductProperty] +type: unicode +name: poolid-or-licensekey +multivalue: False +editable: True +description: id from opsi-license-management-pool or license key + +[ProductProperty] +type: unicode +name: method +multivalue: False +editable: False +description: What should we do: + "only-activate" : activate with the installed key + "opsi License management": get key from opsi (need the poolid in other property) and activate + "licensekey from property": get licensekey from property 'poolid-or-licensekey' and activate +values: ["licensekey from property", "only-activate", "opsi License management"] +default: ["only-activate"] + +[ProductProperty] +type: unicode +name: httpproxy +multivalue: False +editable: True +description: httpproxy needed for activation proxy.mycompany.com:3218 +default: [""] +