Creating an Easy MDT Wizard Pane for Mikael Nystrom :)

I have nothing but love for Mikael Nystrom.  He is a true genius when it comes to OS Deployments.  While I am certainly not up to the level as Mikael, I am scratching my head at his post “OS Deployment – Adding a Wizard to control the Task Sequence behavior when you create a Reference Image“.

In this post at the bottom of his Q & A, he states

Question: Why don’t you add a Wizard Page instead?
Answer: Because that is more complicated if you don’t know exactly how the wizard works

Well, I need to simplify things for everyone (it’s not really that hard)

Create %ScriptRoot%\DeploymentSettings.xml

Create a file called DeploymentSettings.xml in your %ScriptRoot% with the following contents (I’d share the text, but apparently WordPress is not liking the XML that much)


Continue reading


MDT: Unattend.xml CopyProfile

CopyProfile is a setting added to the Microsoft-Windows-Shell-Setup section of an Unattend.xml.


Adding this entry to a Deployment of a Custom Image that has an Administrator Profile will cause Windows Setup to replace the Default User Profile with the Administrator Profile.

Continue reading

MDT: ZTINotePause.wsf Pause Script

Here is a script that I have been using in my MDT Task Sequences to pause at specific Milestones.  This allows me to have a quick check at variables, and to provide a specific spot for me to make Checkpoints.  You can view my source files on GitHub, or just download the ZIP

Edit 2015/11/02 @ 8:00pm CST: Updated CustomOptions.xml due to formatting changes


There are two files you are going to want to add to your Deployment Share in the Scripts directory.  They are ZTINotePause.wsf and CustomOptions.xml.  Do NOT add the DeployWiz_Definition_ENU.xml file to your Scripts directory.  This is an example only . . .

Continue reading

Partitions: Recommendations and ZTIRecoveryDisk.wsf

Hopefully you have read my two posts on default MDT 2013 Update 1 (Build 8298) BIOS and UEFI Partitions, and here is what I have decided for my layout.  Before you decide to do the same, I recommend reading Microsoft Hardware’s posts on Partitions

Microsoft Hardware Dev: Hard Drives and Partitions

Microsoft Hardware Dev: UEFI/GPT-based hard drive partitions

Microsoft Hardware Dev: BIOS/MBR-based hard drive partitions

I have decided that this is how I want my Partitions for BIOS and UEFI


Continue reading

Partitions: MDT 2013 Update 1 Build 8298 Default UEFI Partitions

Continuing from my last post on BIOS Partitions, I’ll explain the UEFI side of things


On a UEFI system 4 partitions will be created.

  • Boot / 499MB / FAT32 / EFI Bootable
  • MSR / 128MB
  • Windows / 99% Remainder / NTFS
  • Recovery / 100% Remainder / NTFS

I added a pause in my Task Sequence right after the Format and Partition Disk (UEFI) step and on a 127GB drive in Hyper-V, this was my layout:

  • BOOT/ 499MB / NTFS / EFI Bootable
  • MSR / 128MB
  • Windows / 125GB / NTFS
  • Recovery / 1299MB / NTFS


Very similar to BIOS (in relation to the size of my Recovery Partition), and this variance in Recovery Partition sizes has led me to come up with my own solution.

Partitions: MDT 2013 Update 1 Build 8298 Default BIOS Partitions

Its time to clear the air when it comes to Partitions and the Task Sequences.  I’ll start with the latest MDT 2013 Update 1 (Build 8298) and detail the issues.


On a BIOS system 3 partitions will be created.

  • System Reserved / 499MB / NTFS / Bootable
  • Windows / 99% Remainder / NTFS
  • Recovery / 100% Remainder / NTFS

I added a pause in my Task Sequence right after the Format and Partition Disk (BIOS) step and on a 127GB drive in Hyper-V, this was my layout:

  • System Reserved / 499MB / NTFS / Bootable
  • Windows / 125GB / NTFS
  • Recovery / 1300MB / NTFS


The biggest issue that I have is my Recovery Partition is about 1% of my Total Drive Size.  So on a 127GB Drive, this is a 1.27GB Partition, way too large for a 300MB WinRE.wim.  Now if I use the same logic, and apply this to a 20GB drive, my Recovery Partition will be 200MB.  Way too small!  And if I have a rather large 1TB drive, then I get to look forward to a 10GB Recovery Partition.  The main issue for this is that there is no control on the Recovery Partition size (because the partitioning changed from Script based to Task Sequence based).

MakePE: Adding Extra Files to WinPE

I will have to go visual on how this works.  In MakePE\Optional\ExtraFiles you will have several directories.  This is how you inject Extra Files into WinPE.

In my example below I am adding files to WinPE 10 x64.  I want to add msinfo32.exe as well as some OSK support.  These files need to go in WinPE in Windows\System32.  So I create out the directory structure in MakePE at MakePE\Optional\ExtraFiles\WinPE 5 x64\Windows\System32 and just copy the files in there.  MakePE will handle the rest.


So why are there tons of other folders in there?  Simple, for multiple combinations.  For example let’s say I need a file in Windows on WinPE 5 x86 and x64.  I will add the files to MakePE\Optional\ExtraFiles\WinPE 5\Windows

If I want to include something in every version of WinPE, then it needs to go into MakePE\Optional\ExtraFiles\All

Got it?

MakePE: Back on Track

I’ve taken some time off in updating this blog for a few reasons.  For starters, MDT 2013 Update 1 wasn’t working like it should.  Not entirely my fault.

MDT 2013 Update 1 was released for Windows 10 deployments in August.

MDT 2013 Update 1 Now Available

But that didn’t go so well.  There were quite a few bugs with this release, including one that I submitted related to partition sizes.  This has been corrected and re-released, so make sure you have downloaded MDT 2013 Update 1 from this link below.

MDT 2013 Update 1 re-released (build 8298)

Additionally I have been working with Bruce Osborne (Liberty University) in his testing of my MakePE scripts.  It has been great to be able to show how MakePE works by someone else, although his interest seems to be more of the wireless connectivity of WinRE 10, but I am sure that will come up.

And finally I will be presenting MakePE to HASMUG on October 15, right before the legend, Wally Mead!

Anyway enough rambling, let’s get back to MakePE.

Pro Tip: Use A Virtual Machine

I am going to spend the next several days posting on how to create WinPE with minimal effort, but before you get started, make a Virtual Machine.  It doesn’t matter what OS, Windows 7, Windows 8.1, or Windows 10, but make a VM with one thing and one thing only.  Notepad++

The best thing about using a VM is no Anti-Virus blocking DISM and causing errors, and the ability to make snapshots before making changes.

8-4-2015 10-43-20 PM

WinPE: Wireless Support in WinRE 10

When running dism /Get-Features agains the Windows 10 WinRE.wim, there is a Feature Pack installed called WinPE-WiFi.  You won’t find this in Boot.wim or ADK WinPE.wim, or as an ADK Optional Component.

Feature Name : WinPE-WiFi
State : Enable Pending

So what can we do with this?  Apparently if you have Wireless Drivers installed in WinRE (they are there by default for Surface Pro systems), you can use wireless with a few easy steps.

Continue reading