How to Extract Install.ESD to Install.WIM (Windows 10/8)
When you download a Windows 10 or 8 ISO file, by using the Media Creation tool, you will realize that there is an "install.esd" file under the "sources" folder (X:\Source\install.esd). The install.esd file is a compressed and encrypted file that contains a full copy of the Windows operating system in a protecting container.
The install.esd file, can be used as a repair source, when using the DISM command line tool with the /Source switch to repair Windows 10 or Windows 8/8.1.
- DISM /Online /Cleanup-Image /RestoreHealth /Source:ESD:X:\Sources\install.esd
But many users complained, that even by using the correct install.esd file, the DISM tool could not find the source files required for the repair.
After many tests I realized that the DISM could not find the source files error is happened because, in the latest Windows versions the install.esd file can contain multiple Windows 10 images (install.wim files), for several Windows versions (e.g. Windows 10 Pro, Windows 10 Home, etc.) , so DISM could not find the correct files required to repair Windows. (To view all the contents of an install.esd file you can use 7zip)
In this tutorial you can find detailed instructions on how to extract install.esd file, in order to get the correct install.wim file, needed to repair Windows 10 or Windows 8/8.1 (Export Install.WIM from Install.ESD)
How to Convert install.esd to install.wim (Windows 10/8)
1. From the Windows installation media, copy the install.esd file from the "sources" folder (e.g. X:\sources\install.esd) to the root folder of drive C: *
* Note: If you are using an ISO Image file, first mount it to Windows. If you are using Windows 8/8.1, then read this article: How to mount ISO files.
3. Right click at Start menu and select Command Prompt (Admin).
4. Type cd\ to go to the root folder of drive C:\
5. Then type the following command and press Enter, in order to find which images are in the "install.esd" file:
- dism /Get-WimInfo /WimFile:install.esd
6. According to your Windows 10 installed version take note of the index number. *
* e.g.: If you have installed the Windows 10 Home edition on your system, then the Index number is "2".
7. Then give the command below to extract the corresponding to your Windows version "install.wim" file (Index number): *
- dism /export-image /SourceImageFile:install.esd /SourceIndex:IndexNumber /DestinationImageFile:install.wim /Compress:max /CheckIntegrity
1. Replace the IndexNumber according to your Windows 10 installed version.
e.g. For this example (for a Windows 10 Home based computer) we want to extract the install.wim file with Index number=2. So, the command will be:
- dism /export-image /SourceImageFile:install.esd /SourceIndex:2 /DestinationImageFile:install.wim /Compress:max /CheckIntegrity
2. If you receive the "Error 11. An attempt was made to load a program with an incorrect format" after running the above command, change the /Compress argument* from "max" to "fast" or to "none" or to "recovery".
* The /Compress argument, the type of compression used for the initial capture operation. The maximum option provides the best compression, but takes more time to capture the image. The fast option provides faster image compression, but the resulting files are larger than those compressed by using the maximumoption. This is also the default compression type that is used if you do not specify the argument. Use the recovery option to export push-button reset images. The resulting files are much smaller in size, which in turn, greatly reduce the amount of disk space needed for saving the push-button reset image on a recovery drive. The destination file must be specified with an .esd extension. The none option does not compress the captured image at all.
7. When the process is completed you should have the exported install.wim on the drive C: (C:\install.wim).
That's it! Let me know if this guide has helped you by leaving your comment about your experience. Please like and share this guide to help others.
We're looking for part-time or full-time technical writers to join our team! It's about a remote position that qualified tech writers from anywhere in the world can apply. Click here for more details.
June 21, 2021 @ 2:31 pm
Thank you very much it helped me in windows 8 and i don't have any access to windows 10.
It helped me very much.
November 28, 2020 @ 5:10 am
Thank you. I have lookedd at many guides on fixing DISM source errors and yours is the best.
December 9, 2019 @ 7:51 pm
Make sure you check your DISM version, these commands don't seem to work on a Win 7 pro OS instance when working with generated windows 10 media.
October 31, 2019 @ 1:39 pm
thank you very much very clear explanation and guide, nice job.
August 31, 2019 @ 11:04 pm
I was able to extrac the install.wim into c:\ root folder
but regardless what i do the dism is not working and still cannot find the source i even packed that file into an image and tried it from there no luck …. why the fuck needs this to be so complicated
September 1, 2019 @ 11:08 am
Use the instructions at this method (NLITE) to extract the install.wim file and try the procedure again.
May 9, 2020 @ 2:00 am
Has NLITE been of any help to anybody yet? – I'm super sceptical of 3rd party software for good reasons. Staying away from untrusted sources unless multiple folks can attest to no issues.
June 7, 2019 @ 7:02 pm
Worked like a charm!!
April 3, 2019 @ 1:14 am
7zip software is able to:
– open windowsxx.iso
– then extract or open install.esd
If one's intention is to extract specific files from windowsxx.iso or install.esd and not creating an install.wim, then 7zip is more than sufficient.
March 15, 2019 @ 11:33 pm
I hope you still look at this site, as the last post I see here was a long time ago!
I have spent a lot of time now (Days on and off!), trying to convert a windows 10 install.ESD file to an install.WIM file, so I can deploy Windows on a server, using WDS without luck.
I have followed examples from several different sites… Your example is the only one I have found that mentions the different compression formats e.g. Max, Fast, Recovery & None. I know the example says that the Recovery option has to have a .ESD extension but that is the only option that works (Although I give it the .WIM extension) without giving me the error "11 An attempt was made to load a program with an incorrect format" is the Recovery option but WDS reports that the file is either invalid or corrupt.
I am now at a loss and am hoping for a response and a possible solution or explanation as to what I am possibly doing wrong!
March 16, 2019 @ 10:12 am
@Graham: Another method to convert ESD to WIM is by using NLITE. If you want to try, then follow these instructions and tell me the results.
March 18, 2019 @ 12:30 am
Hi lakonst, Thank you very much for your prompt reply and suggestion of using NTLite.
The program did it's magic and the .WIM file it created was accepted (Imported) by WDS but when I try to PXE load a machine, it starts to boot via WDS, then I get an error from Windows Boot Manager, saying that Windows failed to start. Status: 0xc0000001 A required device isn't connected or can't be accessed.
March 18, 2019 @ 10:25 am
@Graham: 1. Make sure that you have set the correct Date/Time at the machine 2. Add the network drivers in the boot image. 3. In WDS server's registry: Navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\DP and change the RamDiskTFTPBlockSize value to 1456.
Now try to boot again…and if you receive the same problem..
4. Open WDS > At the left, right-click on your server and choose Properties > Select the "TFTP" tab and set the Maximum block size to 1024. > Restart the WDS server and try to boot the machine again.
February 27, 2018 @ 12:31 am
Do you put it the extracted install.wim back into the iso?
If so, by what method?
November 12, 2018 @ 11:39 am
@kpal: To put the install.wim back to the Windows ISO file, you have to:
1. Extract the Windows ISO image file.
2. Delete the existing install.wim (or install.esd) from the "sources" folder at the extracted ISO folder.
3. Copy the extracted install.wim to "sources" folder (at the extracted ISO folder)
4. Create a new Windows ISO file from the extracted/modified folder.
The instructions can be found here: https://www.wintips.org/how-to-edit-iso-file-modify-windows-iso-bootable-image/
March 18, 2019 @ 11:08 am
Good Morning lakonst,
Thanks again for prompt response.
I did some research and did try "4. Open WDS > At the left, right-click on your server and choose Properties > Select the "TFTP" tab and set the Maximum block size to 1024. > Restart the WDS server and try to boot the machine again." without luck. I also tried installing the Laptop directly with Windows-10 install DVD, which I hadn't previously! and I got the Windows Boot Manager Status 0xc0000260 … I then released that maybe this Laptop just won't work with Win-10 as it is an old Dell, which I was using as a test machine to practice WDS imaging tools.
If this is the case, I apologize for wasting your time :-/
December 13, 2017 @ 8:09 am
I extracted one indexed item and want to put this back alone only
so How to compress back this install.wim to install.esd, and what must be set to the installation configuration to be able to smoothly perform the installation correctly after the other of the item(s) left out.
December 13, 2017 @ 11:49 am
@ To convert the extracted INSTALL.WIM to Install.ESD use the following command: (don't forget to modify the full path for the source and the destination image files)
dism /export-image /SourceImageFile:"install.wim" /SourceIndex:1 /DestinationImageFile:"install.esd" /Compress:recovery
December 13, 2017 @ 8:06 am
I extract one indexed item and want to put this back alone only
so How to compress back this install.wim to install.esd, and what must be set to the installation configuration to be able to install correctly after one of the indexed item is left out.
December 13, 2017 @ 8:03 am
How to compress back to esd the install.wim, and what the setting to be made in installation configuration to be able to install correctly after one of the indexed item is left out.
December 6, 2017 @ 7:06 pm
great work man.
November 23, 2017 @ 8:04 pm
I seem to be missing a crucial step. I copied the esd file, but how do I paste it to the C: root folder?
November 23, 2017 @ 9:08 pm
@Clay Davis: Highlight the Disk C in explorer and Paste.
November 21, 2017 @ 10:36 pm
I'm getting Error 605: the specific buffer contains ill-formed data when trying to extract the ESD. Any ideas?
November 22, 2017 @ 11:00 am
@Hydroxide: Please try an in place upgrade. Your system files appear to be corrupt.
October 31, 2017 @ 8:43 pm
I have always had problems with DISM resolving component store corruption. As you said, it could not find the source. Your method solved the problem. The corruption has been repaired. It is so hard to find reliable information regarding problems with DISM, but you have done it! Thank you so much for sharing …
September 22, 2017 @ 12:44 am
I've been trying to repair a WIndows 8.1 installation using DISM, which fails using the esd file, so I'm trying to extract that to a WIM file to use (I've read elsewhere that DISM doesn't always find the source files in the esd.) Step 1 works fine and I can see there's only 1 installation in the ESD file (obtained from an ISO built using Windows Media Creation Tool). But when I run step 2 I get the following error:
An attempt was made to load a program with an incorrect format.
The DISM log file can be found at C:\Windows\Logs\DISM\dism.log
The DISM log shows the following:
2017-09-21 15:25:38, Warning DISM DISM WIM Provider: PID=7668 [ReadWimHeader:(2268) -> version/header mismatch] C:\install.esd (HRESULT=0x8007000B) – CWimManager::WimProviderMsgLogCallback
2017-09-21 15:25:38, Error DISM DISM WIM Provider: PID=7668 [WIMCreateFile:(415) -> Fail to read WIM header] C:\install.esd (HRESULT=0x8007000B) – CWimManager::WimProviderMsgLogCallback
2017-09-21 15:25:38, Error DISM DISM WIM Provider: PID=7668 TID=3960 base\ntsetup\opktools\dism\providers\wimprovider\dll\wimmanager.cpp:1440 – CWimManager::Export(hr:0x8007000b)
2017-09-21 15:25:38, Error DISM DISM WIM Provider: PID=7668 TID=3960 base\ntsetup\opktools\dism\providers\wimprovider\dll\wimmanager.cpp:4862 – CWimManager::InternalCmdExport(hr:0x8007000b)
2017-09-21 15:25:38, Error DISM DISM WIM Provider: PID=7668 TID=3960 Error executing command – CWimManager::InternalExecuteCmd(hr:0x8007000b)
2017-09-21 15:25:38, Error DISM DISM WIM Provider: PID=7668 TID=3960 base\ntsetup\opktools\dism\providers\wimprovider\dll\wimmanager.cpp:2273 – CWimManager::ExecuteCmdLine(hr:0x8007000b)
2017-09-21 15:25:38, Error DISM DISM.EXE: WimManager processed the command line but failed. HRESULT=8007000B
September 22, 2017 @ 8:59 am
@AZMountainGeek: Have you downloaded the ISO file at the same Windows version & architecture (64bit or 32Bit) as the OS is? Also, are you sure that the ESD contains only one version of Windows? From the error I understand that the version of ESD file is mismatch.
September 24, 2017 @ 6:14 am
@lakonst: Thanks for the quick response. Just to be sure, I redownloaded the ISO with Media Creation Tool paying careful attention to the version and architecture. Here's what checking the ESD contents shows:
C:\temp>dism /Get-WimInfo /WimFile:install.esd
Deployment Image Servicing and Management tool
Details for image : install.esd
Index : 1
Name : Windows 8.1
Description : Windows 8.1
Size : 13,116,079,066 bytes
The operation completed successfully.
…only one version, so the index 1 should work, but I still get error 11. After more research it looks like there are several problems can cause the error. Apparently even if CMD is started as administrator it's possible that it runs as 32 bit which could cause the problem. I've experimented using some other info I found (most notably which subdirectory to run DISM from), but so far no joy – still getting error 11. Will keep researching, but if anyone has some other ideas I'd be grateful. Thanks!
September 24, 2017 @ 10:25 am
@AZMountainGeek: Try to download the WINDOWS ISO file using the Windows ISO Downloader tool and tell me the results with DISM.
April 7, 2018 @ 8:00 pm
I was having the same error as you: "An attempt was made to load a program with an incorrect format." and it took me some hours to figure out what it was.
When you type in dism /export-image /? it is stated that the compression of the destination image has to be the same as the source image and that is the key to the solution:
Unfortunatley I don't know how to check the compression state of an image yet but there are only 4 possibilities (at least in Windows 8.1): fast, none, max and recovery.
So what you have to do is try the /compress switch with that 4 options until you get it right.
Turns out "max" is not always the compression used by microsoft for my Windows 8.1 install.esd that was on my flash USB it was "recovery". Don't even know what to think of it if that is a low or high level compression but that was what made the command work for me. So good luck, I hope this helps.
November 6, 2018 @ 6:53 pm
This after-solution helped me buddy. Thanks a lot
August 3, 2019 @ 11:01 am
Thanks Ricardo, this was the answer!
June 20, 2017 @ 7:07 pm
Now when i want to do everything again i cant even do step 1 with dism /Get-WimInfo /WimFile:install.esd Because it cant find the file while its still there…..
June 21, 2017 @ 9:05 am
@Adorianu: Did you copy the file to the root folder of C:\ drive?. Otherwise, download the Windows ISO again. I suppose that the current ISO file is corrupted.
June 21, 2017 @ 10:00 am
Yes it's on my C:\ ."Install.esd".
I have ISO from microsoft site.
It's really frustrating im fighting all day with problem of repair like here:
But now when i found this site here with this solution that could help me it's not working as well xD.
May 6, 2017 @ 11:57 pm
I used your procedure to extract and export install.wim file on C root, wich worked perfectly but when I run the ISM /Online /Cleanup-Image /RestoreHealth /Source:wim:.. in he console, I wind up once again with that Could not find the files needed for repair. Any idea to solve that problem? I must precise here that I used the exact proper version ( Windows 10 Home ) and that I entered the exact file path too. Thanks in advance, Roger.
May 7, 2017 @ 10:13 am
@Roger: 1. If the WIM file is in the C root, make sure that you type correct the DISM command: DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:C:\install.wim
2. Make sure that you have downloaded the correct version of Windows 10 Home (32 or 64 bit).
3. If you still have problems then follow the instructions on this article: FIX DISM Source Files Could not be Found Windows 10/8
May 6, 2017 @ 9:02 pm
Works just great, man! You're a pro! :-P
April 17, 2017 @ 2:46 am
thank you for this awesome guide. i was having problem with DISM: Error: 0x800f081f The source files could not be found.