DISM Tool – WinPE 3.0 Boot Environment

I recently compiled a new library of commands since the upgrade from WinPE 2.0 to WinPE 3.0. With Windows 7 coming along they released a new way to create bootable USB sticks using Deployment Image Servicing and Management (DISM.exe). You might be asking yourself, what could I use this for? We are using it at my work to re-image computers, capture backup images, mount images, etc. There are many other uses for it but I will not get into that here. I have literally done this procedure a couple hundred times. In a future article I will show you how to write a simple batch script to automate this process. But it helps to understand what is going on with each command in case you have trouble. Batch scripts never work 100% of the time.

WinPE 3.0 Boot Environment

You will need the following to proceed:

  • Windows® Automated Installation Kit (AIK) for Windows® 7 RC (Download from Microsoft) : 08.06.09
  • Bootable Flash drive (500MB or larger)

Once you have installed WAIK then you will need to browse to your start menu and click on “Deployment Tools Command Prompt”. I have provided a picture below.



Once you have launched DTCP you will need to follow through the commands I have compiled below. The first one I have provided a screenshot.

DISM – Step 1 – Prep/Cleanup

[vb]DISM /Cleanup-Wim[/vb]

The DISM cleanup command simply cleans up any previous wims/mounts you have been working with. If you do this a lot, you will need to use this command otherwise you will start receiving errors from previous wims possibly still left on the system.

DISM Step #1

DISM – Step 2 – Copy WinPE 3.0 to your local C Drive

[vb]copype.cmd x86 c:winpe_x86
copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim [/vb]

This creates a winpe_x86 folder on your C: drive and then copies the contents of the WinPE folder from the WAIK installation to your folder.

DISM – Step 3 – Mounting .Wim File on your local C Drive

[vb]Dism /Mount-Wim /WimFile:C:\winpe_x86\winpe.wim /index:1 /MountDir:C:\winpe_x86\mount [/vb]

This command mounts the wim file that was copied over in step #2 so that you can browse the system32 folder and insert your custom scripts, etc.

DISM – Step 4 – Adding Packages to your WIM

[vb]Dism /image:C:\winpe_x86mount /Add-Package /PackagePath:”C:\Program Files\Windows AIKToolsPEToolsx86WinPE_FPswinpe-wmi.cab”
Dism /image:C:\winpe_x86mount /Add-Package /PackagePath:”C:\Program Files\Windows AIKToolsPEToolsx86WinPE_FPsen-uswinpe-wmi_en-us.cab”[/vb]

There are many packages you can add to your WINPE boot environment, these are two I always add to mine.


DISM – Step 5 – Adding Drivers to WinPE

[vb]DISM /image:c:\winpe_x86\mount /Add-Driver /driver:C:\YOUR_FOLDER_OF_INF_DRIVERS /recurse[/vb]

A nice addition to DISM over the previous peimg command in WINPE 2.0 is the ability to add drivers with the /recurse command. The /recurse command now allows us to simply have all of our drivers in their own directory and tell DISM to scan the root folder and everything beneath it. The number of sub directories won’t matter. I have a huge library of drivers, for example, you will want to have the network and vga drivers for anything that you boot up to in the WinPE environment. By adding the network driver to your WinPE boot environment, it allows you to access network shares for capturing and deploying .wim images.

DISM – Step 6 – Adding Custom Scripts, Batch Files, Etc.

[vb]xcopy /e /y “C:\YOUR_FOLDER_OF_SCRIPTS” C:\winpe_x86\mount\Windows\System32[/vb]

Without adding anything to your WinPE boot environment you will simply be left with a command prompt window when booting to it on a computer. I have added over 15 different batch scripts with different functions. One thing I highly suggest adding is GImageX. GImageX is a very small GUI program that you can add to be able to capture, deploy, and mount images within the WinPE boot environment. I have provided a picture of GImageX GUI below.

For WinPE 3.0 Boot Environment - Mount, Deploy, Capture Images

DISM – Step 7 – Unmounting your finished .WIM

[vb]Dism /Unmount-Wim /MountDir:C:\winpe_x86\mount /Commit[/vb]

This commits the final changes to your .WIM file and anything you added to it. It is very important to unmount your .WIM file when you have finished.


DISM – Step 8 – Copies your .WIM to Boot ISO

[vb]copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim /Y[/vb]

DISM – Step 9 – Creates bootable .ISO of WinPE 3.0

[vb]oscdimg -n -b c:\winpe_x86\etfs\boot.com c:\winpe_x86\ISO c:\winpe_x86\winpe_x86.iso[/vb]

Now, if you are wanting to use a flash stick you will need to format a flash stick in a certain way, and then simply copy the contents of the c:winpe_x86ISO to your flash drive. And thats it! Stick it in a computer, restart, and boot to it. The .ISO made in step #9 can simply be burned to a CD with Nero or other program capable of making bootable CD and then you can boot to it in the same way.

DISM – Step 10 – Optional Backup

[vb]xcopy /e /y “C:\winpe_x86” E:\BACKUP_FOLDER_FOR_LATEST_BOOT_BUILD[/vb]

This step is optional, but I always like to keep a backup for the future. Also, if you ever need to create another bootable flash stick or CD you can simply go to your backup and grab the files.

I enjoy technology and developing websites. Since 2012 I'm running a few of my own websites, and share useful content on gadgets, PC administration and website promotion.
Latest posts by Cyril Kardashevsky (see all)


  1. xcopy /e /y “C:\YOUR_FOLDER_OF_SCRIPTS” C:\winpe_x86\mount\Windows\System32\
    What file should I add in “folder of scripts” to get Gimagex to start when I boot from USB?

    I was simply left with a command prompt when I tried to boot with my usb… is there a guide what to do after you have completed completed the sysprep “start to finish”..? I cant understand how to make the image file.


  2. The folder of scripts refers to the scripts located here: https://theitbros.com/winpe-3-0-scripts. You can download them. Please note.. I am currently in the process of updating all my sysprep tutorials to WinPE 3.1 which was just released. Hopefully will have those posted tomorrow. Also, thank you for mentioning a guide on what to do after… I will now be writing a guide for that as well… I would either subscribe to our RSS feed or check back under the “sysprep” category for when I post it.

  3. Why do we overwrite the second file twice? (once in the beginning, once while we’re finishing?)
    Is it to back it up the first time (to the source folder) just in case something goes wrong? Why do we overwrite this backup at the end if that’s the case? Thanks in advance. :-)

    copy c:\winpe_x86\winpe.wim c:\winpe_x86\ISO\sources\boot.wim

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.