Advertisement
Guest User

Untitled

a guest
Oct 12th, 2017
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. $wimPath = "F:\WindowsImages\Windows7-Newslipstream\en_windows_7_professional_with_sp1_x64_dvd\sources\install.wim"
  2. $mountPoint = "F:\TempMount"
  3. $updateDir = "F:\tempupdates"
  4. $msuDir = "F:\tempupdates\msus"
  5. $cabDir = "F:\tempupdates\cabs"
  6.  
  7.  
  8. $sourceImageIndex = ( Get-WindowsImage -ImagePath `
  9. $wimPath | `
  10. where-object { $_.ImageName -match "PROFESSIONAL" } | `
  11. select-object -ExpandProperty ImageIndex )
  12.  
  13. If ( -Not ( Test-Path $mountPoint ) )
  14. {
  15.     new-item -Path $mountPoint -ItemType Directory
  16. }
  17.  
  18.    
  19. Mount-WindowsImage -ImagePath $wimPath -Index $sourceImageIndex -Path $mountPoint
  20.  
  21. $featureUpdateUris = New-Object System.Collections.ArrayList
  22. # Windows Virtual PC
  23. $featureUpdateUris.Add("https://download.microsoft.com/download/0/5/5/0554AE99-785F-45CB-B1F2-0E3ED1E6117D/Windows6.1-KB958559-x64-RefreshPkg.msu")
  24. # Windows Help
  25. $featureUpdateUris.Add("https://download.microsoft.com/download/9/A/8/9A8FCFAA-78A0-49F5-8C8E-4EAE185F515C/Windows6.1-KB917607-x64.msu")
  26. # RSAT
  27. $featureUpdateUris.Add("https://download.microsoft.com/download/A/7/1/A71FC7E9-BA09-42F7-913D-2C292F8A386D/Windows6.1-KB958830-x64-RefreshPkg.msu")
  28. # Windows Update
  29. $featureUpdateUris.Add("https://download.microsoft.com/download/B/6/F/B6F95B10-8B74-42F2-B57A-2C559D43BC28/Windows6.1-KB2533552-x64.msu")
  30. # IE 11 Prerequisites
  31. $featureUpdateUris.Add("http://download.microsoft.com/download/6/c/a/6ca15546-a46c-4333-b405-ab18785abb66/windows6.1-kb2729094-v2-x64.msu")
  32. $featureUpdateUris.Add("http://download.microsoft.com/download/9/f/e/9fe868f6-a0e1-4f46-96e5-87d7b6573356/windows6.1-kb2731771-x64.msu")
  33. $featureUpdateUris.Add("http://download.microsoft.com/download/f/1/0/f106e158-89a1-41e3-a9b5-32feb2a99a0b/windows6.1-kb2533623-x64.msu")
  34. $featureUpdateUris.Add("http://download.microsoft.com/download/1/4/9/14936fe9-4d16-4019-a093-5e00182609eb/windows6.1-kb2670838-x64.msu")
  35. $featureUpdateUris.Add("http://download.microsoft.com/download/1/8/f/18f9ae2c-4a10-417a-8408-c205420c22c3/windows6.1-kb2786081-x64.msu")
  36. $featureUpdateUris.Add("http://download.microsoft.com/download/5/a/5/5a548bfe-adc5-414b-b6bd-e1ec27a8dd80/windows6.1-kb2834140-v2-x64.msu")
  37. $featureUpdateUris.Add("http://download.microsoft.com/download/9/1/c/91cc3b0d-f58b-4b36-941d-d810a8ff6805/windows6.1-kb2639308-x64.msu")
  38. $featureUpdateUris.Add("http://download.microsoft.com/download/4/1/3/41321d2e-2d08-4699-a635-d9828aadb177/windows6.1-kb2888049-x64.msu")
  39. $featureUpdateUris.Add("http://download.microsoft.com/download/6/1/4/6141bfd5-40fd-4148-a3c9-e355338a9ac8/windows6.1-kb2882822-x64.msu")
  40.  
  41. Foreach ( $updUri in $featureUpdateUris )
  42. {
  43.     $patchFn = $updUri.Split("/")[-1]
  44.     Invoke-WebRequest -Uri $updUri -OutFile $msuDir
  45. }
  46.  
  47. slipMeUp
  48.  
  49.  
  50. # IE 11
  51. Invoke-WebRequest -Uri `
  52. "http://download.microsoft.com/download/E/F/B/EFBF6FDC-AE5D-404D-B5A3-A695CA831072/IE11-Windows6.1-x64-pl-pl.exe" `
  53. -OutFile $exeDir
  54. IE11-Windows6.1-x64-pl-pl.exe /X:$updateDir
  55. Move-Item $updateDir\*.msu $msuDir
  56. Move-Item $updateDir\*.cab $cabDir
  57.  
  58. Invoke-WebRequest -Uri `
  59. "https://download.microsoft.com/download/3/9/F/39F783C9-FD20-4796-A8AD-62447AF3182C/IE11-Windows6.1-LanguagePack-x64-pl-pl.msu" `
  60. -OutFile $msuDir
  61. Invoke-WebRequest -Uri `
  62. "http://download.windowsupdate.com/d/msdownload/update/software/ftpk/2013/11/ie-spelling-pl_5849ca60c56e4278ddd573a5f5c4fc89ca31255a.msu" `
  63. -OutFile $msuDir
  64.  
  65. slipMeUp
  66.  
  67. # Convencience Package
  68. Invoke-WebRequest -Uri `
  69. "http://download.windowsupdate.com/d/msdownload/update/software/updt/2016/05/windows6.1-kb3125574-v4-x64_2dafb1d203c8964239af3048b5dd4b1264cd93b9.msu" `
  70. -OutFile $msuDir
  71.  
  72. slipMeUp
  73.  
  74. # Rollups
  75. $rollupUris = New-Object System.Collections.ArrayList
  76. $rollupUris.Add("http://download.windowsupdate.com/d/msdownload/update/software/secu/2017/09/ie11-windows6.1-kb4040685-x64_9f76785cc77e9d18a1c5b7f57ba64193baec2d97.msu")
  77. $rollupUris.Add("http://download.windowsupdate.com/c/msdownload/update/software/secu/2017/09/windows6.1-kb4040980-x64_83282fb5210091802984ead0d4175879056d602c.msu")
  78. $rollupUris.Add("http://download.windowsupdate.com/c/msdownload/update/software/secu/2017/09/windows6.1-kb4040980-x64_83282fb5210091802984ead0d4175879056d602c.msu")
  79. $rollupUris.Add("http://download.windowsupdate.com/c/msdownload/update/software/secu/2017/09/windows6.1-kb4041681-x64_6d9242a96d4f1bbea20b8d05ee07db2b91654d72.msu")
  80. Foreach ( $updUri in $featureUpdateUris )
  81. {
  82.     $patchFn = $updUri.Split("/")[-1]
  83.     Invoke-WebRequest -Uri $updUri -OutFile $msuDir
  84. }
  85.  
  86. slipMeUp
  87.  
  88. # unmount wim
  89.  
  90. Function slipMeUp()
  91. {
  92.     Foreach ( $mfile in (Get-ChildItem $msuDir) )
  93.     {
  94.         Expand "$mfile" -f:* $cabDir
  95.     }
  96.     Foreach ( $cfile in (Get-ChildItem $cabDir) )
  97.     {
  98.         dism /image:$mountPoint /add-package /packagepath:$cFile
  99.         Remove-Item $cabDir\*.cab
  100.         Remove-Item $msuDir\*.msu
  101.     }
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement