Sign in to follow this  
Followers 0
LostUser

Doing my own Windows Updates

3 posts in this topic

#1 ·  Posted (edited)

Hi all.

I recently posted a question at windowsbbs regarding doing windows updates manually using a script. Here is a link to that string of posts if anyone cares.

http://www.windowsbbs.com/showthread.php?t=58518

I tried searching the forums here and found just one thread relating to this specificially.

I am nearing completion of setting up updates to run using a compiled script that reads an ini.

If anyone has any other suggestions before I finish this up, I'd appreciate it.

I'll post my code here too just so you can take a look. It is a little scrappy but it will be cleaned up before I make it live...because that is just how I work.

Currently it reads the ini file and creates a log file and a test file to verify output. I wouldn't try running it on a PC unless you have the .ini file in the correct location. I copied and renamed a generic AutoIT .exe to the XP update names to save space on my flashdrive. I also want to update the variables to follow good naming conventions...maybe (I remember reading about that on the forums somewhere).

; ----------------------------------------------------------------------------
;
; AutoIt Version: 3.2.0.1
; Author:        Chris Frederick
; Last Updated:   10/30/2006
; Script Function:To run windows updates using information read from a .ini
; configuration file.  The .ini file includes script initialization values and
; the KB[number], update file location, Windows Update OS, and the service pack
; version(s) that the update covers.
; 
; ----------------------------------------------------------------------------
;
;Basic operation of script
;1.Read ini file sections.  If file is not there then update log file and exit.
;2.File exists then save number of sections in a variable.
;3.Read the ini file settings section (UPDATEMODE)
;4.If testing mode, then cycle through the ini file and save/display the results of updates.
;5.If live mode, then cycle through each update, verify whether the update needs to be done.
;6.If the update needs to be done then verify the update file is there and run it then go to next update.
;
;AutoIT variables return the values below
;OS Versions: WIN_[XP,2003,NT4,2000,98,ME,95]
;OS Service Pack: Service Pack [1,2,3,4,A,B]
;
;INI configuration of update portion
;[KB[number]]
;FilePath=[includes executeable name]
;OS=WIN_[XP,2003,NT4,2000,98,ME,95]
;ServicePack=Service Pack [1,2,3,4,A,B,all]
;
;
#include <guiconstants.au3>
;
Local $i="",$updUpdate="",$updFilePath="", $updOS="", $updOSServicePack=""
Local $pcOS=@OSVersion, $pcServicePack=@OSServicePack, $pcServicePack=StringReplace($pcServicePack,"Service Pack ","sp")
Local $updMode="", $updRestart="", $updShowProgress="", $updDisplayStartMessage=""
Local $updStartMessage="", $updDisplayEndMessage="", $updEndMessage=""
;$updLogFile is currently not used from the ini file key LogFile
;$updLogFile=""
Local $exePath=@AutoItExe, $scriptPath=@ScriptDir
$scriptLogFile="WinUpdates.log"
$scriptLogFilePath=@UserProfileDir & "\Desktop\TempWorkingArea\WindowsUpdates"
$iniFile="WinUpdates.ini"
$iniFilePath=@UserProfileDir & "\Desktop\TempWorkingArea\WindowsUpdates"
$iniFileFull=$iniFilePath & "\" & $iniFile
$TestFile="TestOutput.txt"
$regHotFixKey="HKEY_Local_Machine\Software\Microsoft\Windows NT\CurrentVersion\HotFix"
$regHotFixKeyVal=""
$regUpdateKey="HKEY_Local_Machine\Software\Microsoft\Updates"
$regUpdateKeyVal=""
$hasHotFix=""
$WriteData=""
;updPrevCount is the list of updates that are shown in the registry before the .ini updates are installed
$updPrevCount=""
;updNeedCount is the list of updates that are in the .ini file that need to be installed
$updNeedCount=0
;updHasCount is the list of updates that are in the .ini file that were previously installed
$updHasCount=0
$updTotal=0
$iSections=0
Global $newTestFile=1, $newLogFile=0
Global $scriptLogFileFull=$scriptLogFilePath & "\" & $scriptLogFile
Global $TestFileFull=$scriptLogFilePath & "\" & $TestFile
$run=0

$iniSectionNames=IniReadSectionNames($iniFileFull)
if @error Then
    WriteLogFile("ini file " & $iniFileFull & " not found.")
Else
    $Run=1
EndIf

;Pull the initial configuration settings from the (updatemode) section
if $Run=1 Then
    $updMode=IniRead($iniFileFull,"updatemode","Mode","testing")
    $updRestart=IniRead($iniFileFull,"updatemode","Restart","No")
    $updShowProgress=IniRead($iniFileFull,"updatemode","ShowProgress","No")
    $updDisplayStartMessage=IniRead($iniFileFull,"updatemode","DisplayStartMessage","Yes")
    $updStartMessage=IniRead($iniFileFull,"updatemode","StartMessage","Generic Start Message")
    $updDisplayEndMessage=IniRead($iniFileFull,"updatemode","DisplayEndMessage","Yes")
    $updEndMessage=IniRead($iniFileFull,"updatemode","EndMessage","Generic End Message")
;The lines below are for debugging
    $message="Mode= " & $updMode & @crlf & "Restart= " & $updRestart & @CRLF & "ShowProgress= " & $updShowProgress & @CRLF
    $message=$message & "DisplayStartMessage= " & $updDisplayStartMessage & @crlf & "StartMessage= " & $updStartMessage & @CRLF
    $message=$message & "DisplayEndMessage=" & $updDisplayEndMessage & @CRLF& "EndMessage= " & $updEndMessage & @CRLF
    MsgBox(0,"UPDATEMODE ini section values",$message)

EndIf

;Exit

while $Run=1

;Store total # of sections in iSections.
    $iSections=$iniSectionNames[0]
;Run through the registry for each update in the .ini file.  Start at section 2 in the ini file which is the first update section.
    For $i=2 To $iSections
;IniRead(filename,section,key,default)

        $iniSection=$iniSectionNames[$i]
        $updFilePath=IniRead($iniFileFull,$iniSection,"FilePath","")
        $updOS=IniRead($iniFileFull,$iniSection,"OS","")
        $updOSServicePack=IniRead($iniFileFull,$iniSection,"ServicePack","")
;
        $count=1
        While $count > 0 
            $regHotFixKeyVal=RegEnumKey($regHotFixKey,$count)
            $sError=@error
            If $sError=0 Then
                $hasHotFix=(StringInStr($regHotFixKeyVal,$iniSection))
            Else
                Select
                    Case $sError = 1
                        $caseErrorMsg="unable to open requested key"
                    Case $sError = 2
                        $caseErrorMsg="unable to open requested main key"
                    Case $sError = 3
                        $caseErrorMsg="unable to remote connect to the registry"
                    Case $sError = -1
                        $caseErrorMsg="unable to retrieve requested subkey (key instance out of range)"
                EndSelect

                $count=-1
            EndIf
;
            If $hasHotFix Then
                $count=-1
            EndIf
            If $i=2 and $count > 0 Then
                $updPrevCount +=1
            EndIf
;Count of updates read from registry before any updates
            $count+=1
        WEnd
;
;Compare the OS and ServicePack of the current OS to the requirements of the service pack
;If the ServicePack=all then spCheck will be true.  This was just a convenience as a few updates cover multiple OSes
;and service packs.
;If both OS and service pack match the .ini file values then $runSP equals True
                $osCheck=($pcOS=$updOS)
                $spCheck=((StringInStr($updOSServicePack,$pcServicePack)) <> 0 or ($pcServicePack=($updOSServicePack="all")))
                $runSP=$osCheck and $spCheck
            if not $hasHotFix Then
;               $osCheck=($pcOS=$updOS)
;               $spCheck=((StringInStr($updOSServicePack,$pcServicePack)) <> 0 or ($pcServicePack=($updOSServicePack="all")))
;               $runSP=$osCheck and $spCheck
                if $runSP Then
                    $updNeedCount += 1
                    WriteTestFile($updNeedCount & " Needs hotfix " & $iniSection)
                    if FileExists($updFilePath) Then
                ;run update executeable
                    Else
                ;MsgBox(0,"File not found","Update " & $iniSection & " not found at " & $updFilePath & @CRLF)

                    EndIf
                Else
                    WriteTestFile("Has hotfix " & $iniSection)
                    $updHasCount +=1
                EndIf
            EndIf
;*** Fix repeating of "has hotfix"  911567 and 917344           
    Next
    WriteTestFile("updNeedCount= " & $updNeedCount & @CRLF & "updHasCount= " & $updHasCount & @CRLF & "iSections= " & $iSections & @CRLF)
    WriteTestFile("Total hotfixes previously installed " & $updPrevCount)

    msgbox(0,"OS Information","OS Version=" & @OSVersion & @CRLF & "OS Build=" & @OSBuild & @CRLF & "OS Service Pack=" & @OSServicePack)

    $run=0

WEnd


Func WriteLogFile($WriteData)
    $fileMode=1
    if $newLogFile=1 then
        $fileMode=2
        $newLogFile=0
    EndIf
    $time=@YEAR & ":" & @MON & @MDAY & ":" & @HOUR & @MIN & @SEC
;1=Append to end of file, 2=Overwrite file
    $File=FileOpen($scriptLogFileFull, 1)
    If $File=-1 Then
        MsgBox(1,"File open error", "Error= " & @error & @CRLF & "Unable to open the " & $scriptLogFileFull & " file " & @CRLF & @CRLF & "Timeout in 5 seconds",5)
    Else
        FileWriteLine($File,$time & " - " & $WriteData)
    EndIf
    FileClose($File)
EndFunc

Func WriteTestFile($WriteData)
    $fileMode=1
    if $newTestFile=1 then
        $fileMode=2
        $newTestFile=0
    EndIf
    $File=FileOpen($TestFileFull,$fileMode)
    if $File=-1 Then
        MsgBox(1,"File open error", "Error= " & @error & @CRLF & "Unable to open the " & $TestFileFull & " file " & @CRLF & @CRLF & "Timeout in 5 seconds",5)
    Else
        FileWriteLine($File,$WriteData)
    EndIf
    FileClose($File)
EndFunc
Edited by LostUser

Be open minded but not gullible.A hammer sees everything as a nail ... so don't be A tool ... be many tools.

Share this post


Link to post
Share on other sites



I tried to attach my ini file but didn't seem to work. Here is the ini...

Also, the web link below was a good resource for identifying updates.

http://www.softwarepatch.com/windows/index.html

;Update sections format
;[KB[number]]
;FilePath=[complete path to executeable including executeable name]
;OS=WIN_[XP/2003/NT4/2000/98/ME/95] *note* Only one OS in this vaule
;ServicePack=[sp1,sp2,sp3,sp4,spA,spB,all] *note* separate servicepacks by commas ie.
;sp1,sp2,spA,etc.,.
;
;
;If the same update file covers more than one OS, make a new section for that OS.
;If the same update file covers multiple service packs of an OS then the service packs can be;separated by commas and do not need to be in a separate section.
;If the same update file covers ALL the service packs of an OS then just put all for
;ServicePack
;
;UpdateMode section format
;
;UPDATEMODE
;Mode=
;Restart=
;ShowProgress=
;DisplayStartMessage=
;StartMessage=
;DisplayEndMessage=
;EndMessage=
;LogFile= *This option is currently not used*
;ScriptLogFile=
;
;
;
[UPDATEMODE]
;----------------------------------------------------------------------------------------------
;Mode= [live,testing]
;
;Testing: Will display a message showing the OS and Service Pack of the OS of the machine.
;The equivalent switches for the update executeable that pertain to the UPDATEMODE settings 
;will be displayed.  Updates that are on the machine and all the updates that would have 
;been run on that machine will be displayed.  Also the path to the update executeable will be
;checked and if not found, [file not found] will be displayed for that update.
;Live: Will do any updates that apply.
;----------------------------------------------------------------------------------------------
;
Mode=testing
;
;----------------------------------------------------------------------------------------------
;Restart=[No/Yes]
;
;*NOTE*Options for the restart apply only after ALL the service packs are done.  However, it is
;always recommended to restart a PC after any updates are installed.
;No: Does not restart after the updates are applied
;Yes: Restarts after all the updates are applied
;----------------------------------------------------------------------------------------------
;
Restart=No
;
;----------------------------------------------------------------------------------------------
;ShowProgress= [Yes/No]
;
;Yes: Will run unattended but display a progress bar
;No: Will run unattended and display no progress bar
;----------------------------------------------------------------------------------------------
;
ShowProgress=Yes
;
;----------------------------------------------------------------------------------------------
;DisplayStartMessage= [Yes/No]
;
;Yes: Will display the StartMessage
;No: Will not display the StartMessage
;----------------------------------------------------------------------------------------------
;
DisplayStartMessage=Yes
;
;----------------------------------------------------------------------------------------------
;StartMessage= ["message"]
;
;StartMessage is the message that will be displayed when the update program is first run.
;This message box can be moved and shrunk.  If the box is cancelled, the updates will be 
;cancelled after the currently running update is finished and a message indicating this will be
;displayed.
;----------------------------------------------------------------------------------------------
;
StartMessage="Updates are being run on this computer."
;
;----------------------------------------------------------------------------------------------
;DisplayEndMessage=[Yes/No]
;----------------------------------------------------------------------------------------------
;
DisplayEndMessage= Yes
;
;----------------------------------------------------------------------------------------------
;EndMessage= ["message"]
;
;A message is displayed after all updates are done if the DisplayEndMessage option is
;set to Yes.
;----------------------------------------------------------------------------------------------
;
EndMessage= "Updates have been installed on this computer.  It is reccommended that the computer be restarted."
;
;----------------------------------------------------------------------------------------------
;Logfile= Yes,No *This option is currently not used*
;
;*NOTE* Make sure the location that the LogFile will be saved is read/write enabled.
;If the update is successful, it creates its own logfile in the %sys32% directory.
;The name will usually start with the KB#.
;If there is no path for the script logfile, no logfile will be created.
;
;----------------------------------------------------------------------------------------------
;
;Logfile=
;
;----------------------------------------------------------------------------------------------
;ScriptLogFile= [only the fullpath of the script logfile, no name]
;
;*NOTE* Make sure the location that the ScriptLogFile will be saved is read/write enabled.
;The name of the ScriptLogFile will start with the ComputerName.  The ScriptLogFile will log 
;various information about the script as it runs.  If there is no path for the script logfile, 
;no logfile will be created.
;
;----------------------------------------------------------------------------------------------
;
ScriptLogFile=\\grfsmn1\vol1\grystall\logs\WinUpdates\
;


[KB911567]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\2000_xp\OE6.0sp1-KB911567-Windows-2000-XP-x86-ENU.exe
OS=WIN_2000
ServicePack=all

[KB911567]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\2000_xp\OE6.0sp1-KB911567-Windows-2000-XP-x86-ENU.exe
OS=WIN_XP
ServicePack=all

[KB917344]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\2000_xp\WindowsXP-Windows2000-Script56-KB917344-x86-enu.exe
OS=WIN_2000
ServicePack=all

[KB917344]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\2000_xp\WindowsXP-Windows2000-Script56-KB917344-x86-enu.exe
OS=WIN_XP
ServicePack=all

[KB918439]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1\IE6.0sp1-KB918439-Windows-2000-XP-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1

[KB918899]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1\IE6.0sp1-KB918899-Windows-2000-XP-v3-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1

[KB890830]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\Windows-KB890830-V1.21.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB911564]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsMedia-KB911564-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB917734]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\2000_xp\WindowsMedia9-KB917734-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB873339]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB873339-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB885835]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB885835-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB885836]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB885836-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB888302]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB888302-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB890046]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB890046-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB890859]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB890859-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB891781]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB891781-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB893756]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB893756-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB894391]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB894391-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB896358]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB896358-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB896423]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB896423-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB896424]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB896424-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB896428]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB896428-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB899587]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB899587-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB899589]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB899589-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB899591]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB899591-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB900725]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB900725-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB901017]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB901017-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB901214]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB901214-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB902400]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB902400-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB904706]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB904706-v2-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB905414]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB905414-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB905749]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB905749-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB910437]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB910437-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB911280]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB911280-v2-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB911562]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB911562-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB911927]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB911927-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB912919]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB912919-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB913446]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB913446-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB913580]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB913580-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB914388]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB914388-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB914389]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB914389-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB917422]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB917422-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB917953]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB917953-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB919007]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB919007-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB920670]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB920670-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB920683]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB920683-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB920685]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB920685-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB921398]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB921398-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB922616]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB922616-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB922819]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB922819-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB923191]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB923191-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB923414]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB923414-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB924191]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB924191-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB924496]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp1sp2\WindowsXP-KB924496-x86-ENU.exe
OS=WIN_XP
ServicePack=sp1,sp2

[KB886185]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB886185-x86-enu.exe
OS=WIN_XP
ServicePack=sp2

[KB887472]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB887472-x86-enu.exe
OS=WIN_XP
ServicePack=sp2

[KB900485]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB900485-v2-x86-ENU.exe
OS=WIN_XP
ServicePack=sp2

[KB916595]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB916595-x86-ENU.exe
OS=WIN_XP
ServicePack=sp2

[KB918439]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB918439-x86-ENU.exe
OS=WIN_XP
ServicePack=sp2

[KB918899]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB918899-x86-ENU.exe
OS=WIN_XP
ServicePack=sp2

[KB920214]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB920214-x86-ENU.exe
OS=WIN_XP
ServicePack=sp2

[KB920872]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB920872-x86-ENU.exe
OS=WIN_XP
ServicePack=sp2

[KB922582]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB922582-x86-ENU.exe
OS=WIN_XP
ServicePack=sp2

[KB925486]
FilePath=\\grfsmn1\vol1\installs\windowsupdates\sp2\WindowsXP-KB925486-x86-ENU.exe
OS=WIN_XP
ServicePack=sp2

Be open minded but not gullible.A hammer sees everything as a nail ... so don't be A tool ... be many tools.

Share this post


Link to post
Share on other sites

Have you looked at AutoPatcher?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0