Wednesday, November 27, 2024

Add the Internet Explorer 11 and Updates to a Windows 7 SP1 image

Abstract: With the EOL from pre Internet Explorer 11 browser, there is a high need to roll out IE 11. This howto explain how IE 11 can be added to a Windows 7 SP1 image to simplify the rollout.

Preparation:

– Create “D:\Update_Windows_7_Image”

– Create “D:\Update_Windows_7_Image\Mounted”

– Download the IE 11 offline installer (from here: IE11-Windows6.1-x86-en-us.exe or IE11-Windows6.1-x64-en-us.exe depending on your needs) and store it in D:\Update_Windows_7_Image\IE11_Installer

– Download the IE 11 prerequisites (and also the optional updates) from here and store them in D:\Update_Windows_7_Image\IE11_prerequisite

– Download the latest IE11 cumulative update (at the moment this is MS16-104 / KB 3185319, MS13-090 / KB KB2900986 32/64 bit and  KB4014661) and store it in D:\Update_Windows_7_Image\IE11_Updates

– Install the Windows Assessment and Deployment Kit (ADS) for Windows 8.1 update (from here) [Select the components “Deployment Tools” during installation]

– If you wish to include the convenience rollup update (a kind of pre SP2 for Windows 7), Download it (Windows 7 Convenience Rollup KB 3125574) and store it inside D:\Update_Windows_7_Image\Windows7_conveniencerollup. As this required some prerequisite you need to download KB 3020369 and store that in D:\Update_Windows_7_Image\Windows7_convenienceprerequisites. While you do that you also should download KB3138612 (March 2016 WUA), KB2685813, KB 3172605 (download that true the update catalog, not the normal website!) and KB2685811 and store them inside D:\Update_Windows_7_Image\Windows7_conveniencepostupdates

– If you wish to include additional windows updates [called slipstream in former versions] download them and store them inside D:\Update_Windows_7_Image\Windows7_Updates (e.g. KB 2775511 – Enterprise hotfix rollup or the RDP 8.0 Upgrade KB 2592687). Before you do that make sure you also include the updated Servicing Stack (KB3177467) which you should download here D:\Update_Windows_7_Image\Windows7_Updatesprerequisites

Keep noted that some updates require a mount and unmount. If you do not perform that for example with the integration from KB3125574, you will get the Error: 0x800f082f, which would mean an restart is pending. So you need to follow how to closely here!

Implementation steps:

1.) Extract a original Windows 7 SP1 ISO image to D:\Update_Windows_7_Image\Extracted (e.g. via WinRar)

2.) Inside the D:\Update_Windows_7_Image\IE11_Installer folder run the following command to expand the installer package:

IE11-Windows6.1-x86-en-us.exe /x:D:\Update_Windows_7_Image\IE11_CAB

or

IE11-Windows6.1-x64-en-us.exe /x:D:\Update_Windows_7_Image\IE11_CAB

If you leave IE_SUPPORT_amd64_en-US.CAB / IE_SUPPORT_x86_en-US.CAB in the folder above, this will cause an error 0x80070002 during the dism process

3.) Start a new CMD (run as admin) and close all all file explorer (as that sometimes caused access issues with dism during the commit) [more info´s for DISM here]

If that happen you could discard the changes via “dism /unmount-wim /mountdir:D:\Update_Windows_7_Image\Mounted /discard” and start again with step 1

4.) As a install.wim can contain multiple images we need to check at first the possible indexes via:

dism /get-wiminfo /wimfile:”D:\Update_Windows_7_Image\Extracted\sources\install.wim”

In our example here it will output the following:

Index : 1
Name : Windows 7 STARTERN
Description : Windows 7 STARTERN
Size : 7.523.043.825 bytes

Index : 2
Name : Windows 7 HOMEBASICN
Description : Windows 7 HOMEBASICN
Size : 7.575.961.927 bytes

Index : 3
Name : Windows 7 HOMEPREMIUMN
Description : Windows 7 HOMEPREMIUMN
Size : 7.757.017.242 bytes

Index : 4
Name : Windows 7 PROFESSIONALN
Description : Windows 7 PROFESSIONALN
Size : 7.638.057.417 bytes

Index : 5
Name : Windows 7 ULTIMATEN
Description : Windows 7 ULTIMATEN
Size : 7.798.377.753 bytes

5.) Depending on which version we wish to “update” we need to use the correct index. In this example here we will update all versions, so we will use a batch script which runs true all 5 indexes and performs the same step for all of them (this will not result in a very big file).

If your install.wim showed only 4 indexes, then remove the nr 5 from the 3rd line in the script below.

So create a empty CMD named “integrate_ie11_and_updates.cmd” inside D:\Update_Windows_7_Image with the following content:

@echo off
CLS

cd "C:\Program Files (x86)\Windows Kits\8.1\Assessment and Deployment Kit\Deployment Tools\amd64\DISM"

dism /cleanup-wim
 for %%a in (1 2 3 4 5) do (
        Echo [------------------------ Mount Image --------------------]
	.\dism.exe /mount-wim /wimfile:D:\Update_Windows_7_Image\extracted\sources\install.wim /index:%%a /mountdir:D:\Update_Windows_7_Image\Mounted
        Echo [------------------- Add IE11 Prerequisite ---------------]
	.\dism.exe /image:D:\Update_Windows_7_Image\Mounted /add-package /packagepath:D:\Update_Windows_7_Image\IE11_prerequisite
        Echo [------------------------ Add IE11 -----------------------]
	.\dism.exe /image:D:\Update_Windows_7_Image\Mounted /add-package /packagepath:D:\Update_Windows_7_Image\IE11_CAB
        Echo [-------------------- Add IE11 Updates -------------------]
	.\dism.exe /image:D:\Update_Windows_7_Image\Mounted /add-package /packagepath:D:\Update_Windows_7_Image\IE11_Updates
        Echo [------- Add Win7 convenience rollup prerequisites -------]
	.\dism.exe /image:D:\Update_Windows_7_Image\Mounted /add-package /packagepath:D:\Update_Windows_7_Image\Windows7_convenienceprerequisites
        Echo [------------- Add Win7 convenience rollup ---------------]
	.\dism.exe /image:D:\Update_Windows_7_Image\Mounted /add-package /packagepath:D:\Update_Windows_7_Image\Windows7_conveniencerollup
        Echo [--------- Add Win7 convenience post updates -------------]
	.\dism.exe /image:D:\Update_Windows_7_Image\Mounted /add-package /packagepath:D:\Update_Windows_7_Image\Windows7_conveniencepostupdates
        Echo [------------------- Commit changes ----------------------]
	.\dism.exe /unmount-wim /mountdir:D:\Update_Windows_7_Image\Mounted /commit
        Echo [------------------------ Mount Image --------------------]
	.\dism.exe /mount-wim /wimfile:D:\Update_Windows_7_Image\extracted\sources\install.wim /index:%%a /mountdir:D:\Update_Windows_7_Image\Mounted
        Echo [--------- Add Windows 7 Update prerequisites ------------]
	.\dism.exe /image:D:\Update_Windows_7_Image\Mounted /add-package /packagepath:D:\Update_Windows_7_Image\Windows7_Updatesprerequisites
        Echo [------------------- Commit changes ----------------------]
	.\dism.exe /unmount-wim /mountdir:D:\Update_Windows_7_Image\Mounted /commit
        Echo [------------------------ Mount Image --------------------]
	.\dism.exe /mount-wim /wimfile:D:\Update_Windows_7_Image\extracted\sources\install.wim /index:%%a /mountdir:D:\Update_Windows_7_Image\Mounted
        Echo [---------------- Add Windows 7 Updates ------------------]
	.\dism.exe /image:D:\Update_Windows_7_Image\Mounted /add-package /packagepath:D:\Update_Windows_7_Image\Windows7_Updates
        Echo [------------------- Commit changes ----------------------]
	.\dism.exe /unmount-wim /mountdir:D:\Update_Windows_7_Image\Mounted /commit
)

Note: It would be possible to download all *.CAB files from a fresh installed Windows 7 OS from the folder C:\Windows\SoftwareDistribution\Download\ and put them into D:\Update_Windows_7_Image\Windows_7_Updates. But as Microsoft sometimes re-release hotfixes and the fact that the cleanup agent might delete these files, it should be a fresh installed Windows OS where you fetch the files from.

To speed up the update process you might extract the *.cab files from the *.msu files as explained here.

6.) Inside our still open CMD we will run the script now via:

D:\Update_Windows_7_Image\integrate_ie11_and_updates.cmd

Depending on your PC this might take a while. Keep noted that you should not open the explorer and browse the folders for that project here as that might cause issues in the DISM process!

7.) After that we will create our new ISO. So switch to the OSCDimg folder (C:\Program Files (x86)\Windows Kits\8.1\Assessment and Deployment Kit\Deployment Tools\x86\Oscdimg). Inside that folder run the following command:

oscdimg /b”D:\Update_Windows_7_Image\extracted\boot\etfsboot.com” /h /lGSP1RMCULXFREO_DE_DVD /u2 /o D:\Update_Windows_7_Image\extracted D:\Update_Windows_7_Image\ISO\Windows7Updated.iso

This will create our new ISO, which we can use in VMWare to test it or directly burn to a DVD.

Note: Some updates like the 4.7 .net Framework couldn´t be installed via that way. You can use the approach explained here.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Stay Connected

35FollowersFollow
- Advertisement -

Latest Articles