shawn Posted October 21, 2011 Report Share Posted October 21, 2011 Thanks to the 2gb download fix in Ketarin 1.6.1 beta 2, it's now possible to download these large ISO's via Ketarin. The most current image - October 2011 - is 3.7gb, so expect the download to take some time. <?xml version='1.0' encoding='utf-8'?> <Jobs> <ApplicationJob xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Guid="048268d4-00ef-43c9-a13d-51ed3475b1b7"> <Category>Updates</Category> <WebsiteUrl /> <UserAgent /> <UserNotes /> <LastFileSize>0</LastFileSize> <LastFileDate xsi:nil="true" /> <IgnoreFileInformation>false</IgnoreFileInformation> <DownloadBeta>Default</DownloadBeta> <DownloadDate xsi:nil="true" /> <CheckForUpdatesOnly>false</CheckForUpdatesOnly> <VariableChangeIndicator>version</VariableChangeIndicator> <CanBeShared>true</CanBeShared> <ShareApplication>true</ShareApplication> <ExclusiveDownload>false</ExclusiveDownload> <HttpReferer /> <SetupInstructions /> <Variables> <item> <key> <string>schangelog</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <TextualContent>http://support.microsoft.com/kb/913086</TextualContent> <Name>schangelog</Name> </UrlVariable> </value> </item> <item> <key> <string>swebsite</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <TextualContent>http://support.microsoft.com/kb/913086</TextualContent> <Name>swebsite</Name> </UrlVariable> </value> </item> <item> <key> <string>snotes</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <TextualContent /> <Name>snotes</Name> </UrlVariable> </value> </item> <item> <key> <string>version</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>RegularExpression</VariableType> <Regex>Windows-KB913086-([\d]+)\.iso</Regex> <Url>http://go.microsoft.com/fwlink/?LinkID=79879</Url> <Name>version</Name> </UrlVariable> </value> </item> <item> <key> <string>sdownload</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>RegularExpression</VariableType> <Regex>['"](http[^'"]+Windows-KB913086-{version}\.iso)['"]</Regex> <Url>http://go.microsoft.com/fwlink/?LinkID=79879</Url> <Name>sdownload</Name> </UrlVariable> </value> </item> </Variables> <ExecuteCommand /> <ExecutePreCommand /> <ExecuteCommandType>Batch</ExecuteCommandType> <ExecutePreCommandType>Batch</ExecutePreCommandType> <SourceType>FixedUrl</SourceType> <PreviousLocation /> <DeletePreviousFile>true</DeletePreviousFile> <Enabled>true</Enabled> <FileHippoId /> <LastUpdated xsi:nil="true" /> <TargetPath>C:\ISO\Windows Updates\{appname:regexreplace:([\s\t\r\n\-\\&\/]+):_}-{version}.{url:ext}</TargetPath> <FixedDownloadUrl>{sdownload}</FixedDownloadUrl> <Name>Microsoft Update ISO</Name> </ApplicationJob> </Jobs> Link to comment Share on other sites More sharing options...
aurelio Posted April 2, 2012 Report Share Posted April 2, 2012 This is awesome! Do you have to own a MSDN subscription to download this? Link to comment Share on other sites More sharing options...
shawn Posted April 2, 2012 Author Report Share Posted April 2, 2012 Nope. It just works (assuming you have the bandwidth available to you to choke down 3+gb every month). This particular one I post-process externally after I download it: 1) Extract it to a folder of the same name ("Microsoft_Update_ISO-201203" for example) 2) Run this VBS file to delete all update language packs except english (ENU): kPattern = "(ARA|CHS|CHT|CSY|DAN|DEU|ELL|ESN|FIN|FRA|HEB|HUN|ITA|JPN|KOR|NEU|NLD|NOR|PLK|PTB|PTG|RUS|SVE|TRK)" On Error Resume Next Dim fso 'As scripting.FileSystemObject Dim rx 'As RegExp Dim fol 'As Folder Dim ff 'As File Dim lIter, sFile, sName Set rx = New RegExp rx.Global = True rx.IgnoreCase = True rx.MultiLine = True rx.Pattern = kPattern Set fso = CreateObject("Scripting.FileSystemObject") Set fol = fso.GetFolder(".") EnumFolder fol Set rx = Nothing Set ff = Nothing Set fol = Nothing Set fso = Nothing Function EnumFolder(fol) On Error Resume Next WScript.Echo "Processing " & fol.Path ' test each filename For Each ff In fol.Files If rx.Test("\-" & ff.Name & "\.") Then ff.Delete End If Next ' enumerate the sub folders For Each fol2 In fol.SubFolders If rx.Test("^" & fol2.Name & "$") Then fol2.Delete Else EnumFolder fol2 End If Next End Function You could readily modify kPattern to keep a different language instead, or to keep several languages by excluding them from the list. 3) Move it into a subfolder based on the year (2012). This process lets me push these out to my 32gb USB stick (along with my other apps and tools) and have only what's necessary for a specific system. For example, after filtering for English-only updates: 2008 is 1.4gb, 2009 is 1.9gb, 2010 is 2.5gb, 2011 is 3.2gb and 2012 (so far) is 670mb. And they're available to me even when the client has a God-awful slow connection or no internet access at all. Link to comment Share on other sites More sharing options...
aurelio Posted April 3, 2012 Report Share Posted April 3, 2012 Man, this is so kick-ass! I hope I'll get to this level of automation anytime soon... Link to comment Share on other sites More sharing options...
PCLine_ Posted June 1, 2012 Report Share Posted June 1, 2012 Would this do the same as the VBA code? 7z x {file} -r *\ENU* Link to comment Share on other sites More sharing options...
shawn Posted June 1, 2012 Author Report Share Posted June 1, 2012 No. Some updates are language-neutral and don't include the language-specific child folders. If you only extract those with the language marker then you'll miss out on those updates. Link to comment Share on other sites More sharing options...
mcw2012 Posted February 6, 2013 Report Share Posted February 6, 2013 My template quit working. The template trys to download but nuthing in. C:\ISO\Windows Updates\{appname:regexreplace:([\s\t\r\n\-\\&\/]+):_}-{version}.{url:ext}</TargetPath> Please help. Link to comment Share on other sites More sharing options...
necrox Posted February 6, 2013 Report Share Posted February 6, 2013 @mcw2012 I've modified the initial script (shawn's one). This one works for me: <?xml version='1.0' encoding='utf-8'?> <Jobs> <ApplicationJob xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Guid="048268d4-00ef-43c9-a13d-51ed3475b1b7"> <Category>Updates</Category> <WebsiteUrl /> <UserAgent /> <UserNotes /> <LastFileSize>0</LastFileSize> <LastFileDate xsi:nil="true" /> <IgnoreFileInformation>false</IgnoreFileInformation> <DownloadBeta>Default</DownloadBeta> <DownloadDate xsi:nil="true" /> <CheckForUpdatesOnly>false</CheckForUpdatesOnly> <VariableChangeIndicator>version</VariableChangeIndicator> <CanBeShared>true</CanBeShared> <ShareApplication>true</ShareApplication> <ExclusiveDownload>false</ExclusiveDownload> <HttpReferer /> <SetupInstructions /> <Variables> <item> <key> <string>schangelog</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <TextualContent>http://support.microsoft.com/kb/913086</TextualContent> <Name>schangelog</Name> </UrlVariable> </value> </item> <item> <key> <string>swebsite</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <TextualContent>http://support.microsoft.com/kb/913086</TextualContent> <Name>swebsite</Name> </UrlVariable> </value> </item> <item> <key> <string>snotes</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>Textual</VariableType> <Regex /> <TextualContent /> <Name>snotes</Name> </UrlVariable> </value> </item> <item> <key> <string>version</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>RegularExpression</VariableType> <Regex>Windows_KB913086_([\d-]+)\.iso</Regex> <Url>http://www.microsoft.com/en-us/download/confirmation.aspx?id=36277</Url> <Name>version</Name> </UrlVariable> </value> </item> <item> <key> <string>sdownload</string> </key> <value> <UrlVariable> <RegexRightToLeft>false</RegexRightToLeft> <VariableType>RegularExpression</VariableType> <Regex>fileUrl.*?(http[^"]*\.iso)</Regex> <Url>http://www.microsoft.com/en-us/download/confirmation.aspx?id=36277</Url> <Name>sdownload</Name> </UrlVariable> </value> </item> </Variables> <ExecuteCommand /> <ExecutePreCommand /> <ExecuteCommandType>Batch</ExecuteCommandType> <ExecutePreCommandType>Batch</ExecutePreCommandType> <SourceType>FixedUrl</SourceType> <PreviousLocation /> <DeletePreviousFile>true</DeletePreviousFile> <Enabled>true</Enabled> <FileHippoId /> <LastUpdated xsi:nil="true" /> <TargetPath>C:\ISO\Windows Updates\{appname:regexreplace:([\s\t\r\n\-\\&\/]+):_}-{version}.{url:ext}</TargetPath> <FixedDownloadUrl>{sdownload}</FixedDownloadUrl> <Name>Microsoft Update ISO</Name> </ApplicationJob> </Jobs> Link to comment Share on other sites More sharing options...
mcw2012 Posted February 6, 2013 Report Share Posted February 6, 2013 Thanks for the reply. I will give it a try and let you know. Link to comment Share on other sites More sharing options...
mcw2012 Posted February 6, 2013 Report Share Posted February 6, 2013 @necrox Again thanks for the help. Your file works great. Link to comment Share on other sites More sharing options...
necrox Posted February 6, 2013 Report Share Posted February 6, 2013 You're welcome! Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now