Add files via upload
This commit is contained in:
47
setup/DownloadWUA.nsh
Normal file
47
setup/DownloadWUA.nsh
Normal file
@@ -0,0 +1,47 @@
|
||||
Function DetermineWUAVersion
|
||||
; Hardcoded special case for XP Home/Embedded SP3, because the WUA 7.6.7600.256 setup SFX is
|
||||
; seriously broken on it, potentially causing an unbootable Windows install due to it entering an
|
||||
; infinite loop of creating folders in the root of C:.
|
||||
${If} ${IsWinXP2002}
|
||||
${AndIf} ${AtLeastServicePack} 3
|
||||
${AndIf} ${IsHomeEdition}
|
||||
${OrIf} ${IsEmbedded}
|
||||
StrCpy $1 "5.1.3-home"
|
||||
${Else}
|
||||
GetWinVer $1 Major
|
||||
GetWinVer $2 Minor
|
||||
GetWinVer $3 ServicePack
|
||||
StrCpy $1 "$1.$2.$3"
|
||||
${EndIf}
|
||||
|
||||
StrCpy $0 ""
|
||||
|
||||
ClearErrors
|
||||
ReadINIStr $2 $PLUGINSDIR\Patches.ini WUA $1
|
||||
${If} ${Errors}
|
||||
Return
|
||||
${EndIf}
|
||||
|
||||
${GetFileVersion} "$SYSDIR\wuapi.dll" $1
|
||||
${VersionCompare} $1 $2 $3
|
||||
${If} $3 == 2
|
||||
Call GetArch
|
||||
Pop $0
|
||||
ReadINIStr $0 $PLUGINSDIR\Patches.ini WUA $2-$0
|
||||
${EndIf}
|
||||
FunctionEnd
|
||||
|
||||
Function DownloadWUA
|
||||
Call DetermineWUAVersion
|
||||
${If} $0 != ""
|
||||
!insertmacro Download "Windows Update Agent" "$0" "WindowsUpdateAgent.exe" 1
|
||||
${EndIf}
|
||||
FunctionEnd
|
||||
|
||||
Function InstallWUA
|
||||
Call DetermineWUAVersion
|
||||
${If} $0 != ""
|
||||
Call DownloadWUA
|
||||
!insertmacro Install "Windows Update Agent" "WindowsUpdateAgent.exe" "/quiet /norestart"
|
||||
${EndIf}
|
||||
FunctionEnd
|
Reference in New Issue
Block a user