MDT Updates for Windows 10 Technical Preview Build 10041

Last week the Windows team released a revision to the Windows 10 Technical Preview. As many of you discovered, this new build does not play nicely with MDT 2013 Update 1 Preview. While the MDT Preview properly detects that Windows version 10 is in fact greater than 6 we had a number of bugs regarding the five digit build number (10041).

You may have also noticed that the Windows ADK for Windows 10 Technical Preview is no longer available on the Microsoft Download Center.

Here is your one-stop shop to get this all working again.

MDT Updated Content

Attached to this post (down below my name) is that includes the following files. Extract them and replace into the specified folders:

<InstallationDirectory>\Templates (by default the installation directory is C:\Program Files\Microsoft Deployment Toolkit)

  • Client.xml
  • StateRestore.xml

(NOTE: any existing task sequences built on these templates will not include the revisions. Therefore, we recommend that you recreate any task sequences for deploying Windows 10 based on either of these templates.)

<InstallationDirectory>\Templates\Distribution\Scripts (so that any new deployment share picks up the updated scripts)
<DeployRoot>\Scripts (in other words, the Scripts directory of your deployment share)

  • ZTIGather.wsf
  • ZTIUtility.vbs
  • LTISysprep.wsf
  • ZTIPrereq.vbs

Windows ADK for Windows 10 Technical Preview

The Windows 10 ADK is now available through the Windows Insiders program. Here is how to get it.

  1. Go to the Windows 10 hardware development site.
  2. Click "Download Windows 10 kits, tools, and code samples".
  3. Sign in (or "Get Started" if you are not already an insider).
  4. Under the "For developers" and "Build great hardware" headers, click "Install the hardware development kits".
  5. Under the "Customize, assess, and deploy Windows" header, click "Download the Windows ADK for Windows 10 Technical Preview".

Even if you previously installed the Windows 10 ADK from the Download Center, that was build 9933 so you need to upgrade the ADK to version 10041.

Use the right Windows PE

As of today, the 10041 OS build is digitally signed differently than the 10041 ADK build. This poses a problem when trying to use DISM to inject optional components from the ADK into the boot.wim from the OS source. (When you have a matching Windows OS in the deployment share MDT uses the boot.wim from that source. When they don't match MDT uses winpe.wim from the ADK.) To resolve this, we have to manually modify the deployment share settings to force it to pickup the Windows PE image from the ADK.

  1. Open Notepad, then open <DeployRoot>\Control\settings.xml (where <DeployRoot> is the path of your Deployment Share, C:\DeploymentShare by default)
  2. Find the <Boot.x86.UseBootWim> and <Boot.x64.UseBootWim> settings and change both values to False. For example:

(You will need to completely update the deployment share, but keep reading as there's one more thing you need to do first.)


There is a bug in the 10041 ADK where the Windows PE image does not include MSHTML.DLL which is required for the WinPE-HTA optional component, which MDT is dependent on for all of the beautiful deployment wizardry. Here is how to address that.

  1. Create an extra files folder for each architecture, for example: "C:\ExtraFiles\x86" and "C:\ExtraFiles\x64". 
  2. On the properties of your deployment share, Windows PE tab, enter the path to the extra files folder created in step 1 (for example: C:\ExtraFIles\x86) into the Extra directory to add field. Repeat for the x64 platform.
    (P.s., there's a fun MMC bug here if you open this tab and then click to another window, the MMC will stop responding and the processor spikes. You've been warned. Alternatively, manually edit the Settings.xml file to specify the paths in the <Boot.x86.ExtraDirectory> and <Boot.x64.ExtraDirectory> settings.)
  3. In each of the folders, create "Windows\System32\en-us" structures, for example: "C:\ExtraFiles\x86\Windows\System32\en-us" and "C:\ExtraFiles\x64\Windows\System32\en-us"
  4. Copy the MSHTML.DLL from C:\Windows\System32 of a 64-bit Windows installation (build 10041) to "C:\ExtraFiles\x64\Windows\System32".  Copy the MSHTML.DLL.MUI file from C:\Windows\System32\en-us to "C:\ExtraFiles\x64\Windows\System32\en-us".
  5. Copy the MSHTML.DLL from C:\Windows\System32 of a 32-bit Windows Installation (or from the C:\Windows\Syswow64 folder of a 64-bit installation) to "C:\ExtraFiles\x86\Windows\System32".  Copy the MSHTML.DLL.MUI file from C:\Windows\System32\en-us (or C:\Windows\Syswow64\en-us) to "C:\ExtraFiles\x86\Windows\System32\en-us".
  6. Update your deployment share (completely).

With all of these workarounds in place your MDT 2013 Update 1 Preview experience can continue with Windows 10 Technical Preview build 10041.

-- Aaron Czechowski, Senior Program Manager

This posting is provided "AS IS" with no warranties and confers no rights.

Comments (54)
  1. Anonymous says:

    If for some reason you still have the same issues make sure to pay special attention to the very last step. Make sure to completely regenerate boot images.

  2. Anonymous says:

    I have "streamlined" the process to make it forward compatible with the new Tech Previews.

    I am using the following.

    – MDT 2013

    – Windows 8.1 ADK

    – Additional edits to LTIApply.wsf as detailed in original article with some modifications listed below.


    – Custom DISM script


    1) Edit LTIApply.wsf and change the following code.

    Old Code:

    If Left(oEnvironment.Item("OSCurrentVersion"), 1) >= "6" then

    New Code:

    If ((Left(oEnvironment.Item("OSCurrentVersion"), 1) >= "6") or (Left(oEnvironment.Item("OSCurrentVersion"), 2) = "10")) then

    Then remove the following code and replace with the new code.

    Old Code:

    Elseif Left(sOSBuild, 1) < "6" then
    iRetVal = ApplyImage( "nt52" )

    New Code:

    Elseif Left(sOSBuild, 1) < "6" and Left(sOSBuild, 1) > "2" then
    iRetVal = ApplyImage( "nt52" )

    When it comes to DISM, no need to change the current structure. Use the script at the following location and it will pull the DISM files from the Windows 10 WIM file automatically for you and apply them to the installation session. Does not modify your MDT
    2013 ADK in any way.

    A very smart guy figured this out, many kudos to Frank Lesniak for coming up with this little trick.

    After making only these changes, I am now able to deploy Windows 10 Technical Preview builds 9879 – 10061.

    Enjoy! 🙂

    (Please note, there may be line breaks.)

  3. Anonymous says:

    I followed these steps and couldn’t get my new image to work correctly. It was getting an error in the BDD during the first ZTIGather phase, saying it couldn’t create the ADODB connection. Based on this TechNet article, it was an issue with WinPE.
    I set the UseBootWim option back to True and it worked. Changing this doesn’t appear to have caused a problem with DISM.

  4. Anonymous says:

    @Amil Bansal I am aware of no reason why 10049 would not work.

  5. Anonymous says:

    @Justin: I was getting a similar error before. I was getting an unknown exception error. Just make sure you copied mshtml.dll from 10041 build. I thought the html from 10049 would work (since I am deploying the 10049 build). But it didn’t. Grabbing the
    right DLL did it for me.

  6. Anonymous says:

    I think I may have posted this on the wrong forum as I am not using MDT 2013 to build an image, I am simply trying to update a single image using ADK and Dism. I maybe wrong but I think the fixes here are intended for use with MDT 2013 to function properly.

    I have run ADK setup as admin in which I have noticed no difference. When I commit the changes and remount the image it shows the updates as being present but when I install Win 10 build 10041 it wants to download the updates all over again.

    I have not had any issues running this same procedure with Windows 7 or 8.

  7. Anonymous says:

    Will this MDT update and ADK work with the latest 10049 build as well? Or do we have to wait for another ADK update signed for 10049 build?

  8. Anonymous says:

    Is there an issue using ADK build 10041 to package updates using DISM on Win 10 Build 10041 everything appears to install ok in ADK. But when I install the OS it is still wanting to download the three updates KB3046049, KB3050284, and KB3050653.

    Is there a workaround?

  9. Anonymous says:

    Does the new WinPE finally support Hyper-V dynamic memory?

  10. Anonymous says:

    The Enterprise Client Management team is happy to announce the availability of the Microsoft Deployment

  11. Anonymous says:

    Please reference the MDT 2013 Release Notes as a starting point.
    Important! MDT 2013 Update 1 Preview

  12. Justin L says:

    I have a new MDT Update 1 installation, copied over the contents, using the specified ADK, Using correct PE, and ran the HTA Fix. When I PXE boot, I’m getting a "mshta.exe – Application Error. The instruction at 0x0007FFD0B9A8C4A referrenced memory
    at 0x0000000000000000. The memory could not be read."

    Any assistance?

  13. carl says:

    Hi I’ve followed the instructions and I can build a reference machine but the capture wim file isn’t working. Following the sysprep and restart it doesn’t appear to boot into winpe and runs through the sysprep and ultimately fails (I’m building Windows
    10 Enterprise Build 9926). Looking in ZTIBackup.log I have error " Console > The process cannot access the file because it is being used by another process" rc 2. I’ve checked permissions to captures folder, no existing wim files exist but cant get it to capture.

    Any ideas?

  14. carl says:

    Forget the above – I still had the ImageBuild condition on the WinPE (BCD) step. I removed this, it still failed on a GEN2 hyperv machine – some of the bcdedit commands fail. Have now run this through on a GEN1 machine and it is finally capturing an image.

  15. Bob Hyatt says:

    @Derek Bannard are you able to deploy win7 through win8.1 as well with these modifications to your deployment share?

  16. Joe says:

    @Derek Bannard I checked my deployment and looked in my LTIApply.wsf however I was unable to find the old code to replace it. I am running version 6.3.8216.1000 of the LTIApply.wsf. Everywhere in my LTIApply.wsf I have

    "If oEnvironment.Item("OSCurrentVersion") <> "" then" Which version of LTIApply.wsf are you using?

    @Aaron Czechowski [Microsoft]
    I recently downloaded the ISOs and extracted the 4 files needed to get this fix working. The x86 and x64 mshtml.dll and mshtml.dll.mui. However I am unsure if I am allowed to post a zip with files from the iso. The folders and files already created in the correct
    directory structure so they only need to be unzipped. Then all you would need to do is edit the Settings.xml. If you updated your ADK to 10 and MDT to 2013 update 1 you must have the 10041 version of mshtml.dll and mshtml.dll.mui for the correct architecture
    to deploy any OS windows 7 to windows 10. Without it you will get the "mshta.exe – Application Error. The instruction at 0x0007FFD0B9A8C4A referenced memory at 0x0000000000000000. The memory could not be read."

  17. Peter says:

    These fixes were working fine with my 10041 ISO, but since uploading the 10074 ISO released a couple of days ago, my MDT is no longer deploying Windows10 – The reference O/S can be built and captured, but the Administrator account is disabled, so cannot
    be used. Any ideas?

  18. Jason says:

    @Peter I am seeing the same thing on the 10074 build. I was thinking something did not work right during my Sysprep and was about to rebuild my reference image from CD.

  19. paul says:

    If I incorporate the Fix HTA step and include the ExtraFiles folder then perform update deployment share, I got the error : Access to the path "C:UsersPaulAppDataLocalTempMDTUpdate.1916MountWindowsSystem32mshtml.dll" is denied. The update deployment
    share ran OK without the inclusion of ExtraFiles but the deployment still failed anyway. Since I upgraded to this 11041 build from 9926, nothing works.

  20. Bob Hyatt says:

    @Paul I received that same error. I removed the ExtraFiles from the deployment and I ended up having to copy mshta.exe, mshta.dll, mshta.exe.mui, and mshta.dll.mui from an installed 10041. If you look into the script controlling the wizard you can find
    where it is throwing whichever error you are receiving and try to figure out why its failing. That is how I discovered the winpe image is missing the mshta.exe and the mshta.exe.mui which is not mentioned in the proposed solution. If you mount the ADK winpe.wim
    and investigate you will see that it is indeed missing all of those files. I mounted it and saved them to that wim and the deployment installs the OS but still throws a message saying that I am missing 5 other .dll files. I am in the process of adding the
    other .dll files. Instead of forcing MDT to use the ADK wim you could have it use the wim generated by the deployment share, but you need to mount it and add those files before adding that boot image to WDS. Use Dism to mount and modify the wims.

  21. Jason says:

    Rebuilding from scratch did not work. Is anybody else seeing the issue where you cannot deploy a captured image because the Administrator account is not unlocked during the deploy phase?

  22. paul says:

    @Bob Thank you for your tips. However from the insider program I found a new version WTP10 Enterprise Build 10074 so I downloaded it and reinstalled MDT2013 update 1, WDK10 and recreated my build and deploy task sequences. Everything works without any
    fiddling around.

  23. Jason says:

    Apparently the Administrator being locked is related to the tiledatamodelsvc service not allowing some files to be deleted during Sysprep, causing it to fail. I was able to get around it by manually shutting off the service, but it restarts constantly
    so you have to tap the button many times.

    This blog also has a potential fix.

  24. miked says:

    Are there going to be updates to the Unattend.xml to set the settings from the Welcome Center in Win10? I dont much care for the express settings, which i assume is what happens If I skip the welcome center.

  25. Burt says:

    I’m running 10074 build, still can’t find ADK tools, and the instructions you’ve provided don’t seem to match the current structure of the web pages.

  26. Kellyj says:

    Is there an ETA for a working version of MDT 2013 Update 1?

  27. BobJ says:

    Microsoft has announced Windows10 will be released on July 29th. Can they also give us a release date for MDT?

  28. Dave M2 says:

    Please give us an updated version that works!

  29. bryan L says:

    how about a new version that work works windows 10 without all these hacks?

  30. paul says:

    @Jason: Thank you for the potential fix link. I experienced two issues with my test deployment of Build 10074 Enterprise :
    1. Start MENU and Start Screen works on my reference PC. After the image is captured and deployed, Start Menu and Start Screen do not work. Is it an issue with Build 10074? I am on a slow ring.
    2. During MDT deployment for a toughpad, the process stops at the display screen showing a number of connections: LAN, WIFI, Wireless headed by a message:
    “Let’s get connected”. Pick a network and go online to finish setting up your PC. There is an option to skip this step near the bottom display. I have to manually click on “skip this step” during MDT deployment for it to continue
    This happens before the state Restore phase. How can I skip the step ?

  31. Jason says:

    Paul: Sysprep is broken on most modern builds, specifically the copyprofile=true option. Using the option can create several issues, including the broken start menu. From what I have read it is not fixed in 10130 yet, and may be worse with the entire /generalize
    option being broken.

  32. paul says:

    @Jason, in my case, CopyProfile must be set to True for the deployment process to complete.

  33. Hi, after change these seetings from above, capturing faild with Windows 2008 R2 "not Supported System" or other failure message comes. Waiting for MDT 2014 and a new ADK for Windows 10….

  34. michele says:

    do these workarounds apply also when working with WADK preview build 10075?

  35. Raka says:

    Raka back

  36. Bob S says:

    Is anyone from Microsoft monitoring this thread? Is it too much to ask for a date (or estimate) when MDT will be GA?

  37. Max says:

    Any idea when the finished release will be available? Thank you!

  38. Scott B says:

    Unbelievable that with RTM less than 2 weeks away there still hasn’t been ANY information provided on MDT availability for Windows 10. What are you waiting for!

  39. E.Manolis says:

    We are using MDT in our Company to Deploy! Should we move on SSCM or what??? Please release the Final version with full Windows 10 Support. We are already Deploying Windows 10 RTM but not so easy.We had to change and add many scripts in a Default TS to
    work Perfect! Please Release the Beast 😉

  40. BerloD says:

    Hi MDT Team ! … I’ve been monitoring this Blog patiently for the last few months … and, just like the other recent posters, I am wondering is there a GA date for the final, Win 10 compatible, version of MDT …… and, even if no date available at
    present, I would really appreciate a Work In Progress post from the Team to the Blog … Many Thanks and really appreciate all the great work that has gone into previous versions.

  41. ItsAMe says:

    I ran the ADK from and got an error when the client attempted to download the installer files. The log states that there are hash mismatches.

    Does anyone know the release data for the ADK and Windows 10? I have my users biting my heels for our Windows 10 support roadmap.

  42. J.S.K says:

    I also would love an update on the status of the final stable release of MDT/ADK for Windows 10.

  43. Matt says:

    the blog has been dead for a good few months, any update on a release date for a final non-preview update to fully support the latest build?

  44. Lime Kelvin says:

    I really hope Microsoft is able to give us a release date on the final. Its just one more week until launch and we’re expected a lot of early adopters to request refreshes. If we are nto able to deploy W10 on release with all basic functionality we’ll
    be very disappointed.

  45. J.S.K says:

    FYI : found this updated ADK which does work! Installed this, then the MDT 2013 Update 1. Upgraded deploymentshare, had to create new bootimage (with WinPE en DISM version 10) and voila, it just works.

    Hope this helps.

  46. Jeff Pollock says:

    The silence on this topic is getting irritating to say the least. We need some release dates so that we are not banging our heads against the "pre-release wall". How are we to know what is what here? It’s been nearly 4 months!

    Come on guys give us something! My management is already asking for dates that we cannot even begin to contemplate with your products in this state.

  47. dwr says:

    Any release data for the final MDT/ADK for Windows 10? We are waiting on the toolset in order to start working on 10 deployments….

  48. Dave says:

    Anything? Days? Weeks? Months?

  49. javk says:

    Looking forward to rolling out win 10. Hope they have new improved tools. 🙂

  50. Jim Galloway says:

    Any chance we can get a quick update…or an address to send bribes to? 😉

  51. Max says:

    SDK and ADK were out yesterday. RSAT and MDT are not. :/ a ZD net article mentioned "early August".

  52. Sanfoor says:

    I,m having an error missage when i try to completely update the deployment share.

    Access to the path ‘C:UsersAdministratorAppDataLocalTemp2MDTUpdate.3876MountWindowsSystem32mshtml.dll’ is denied.

    I hope that some one can help

  53. Michal G says:


    You can try to delete xml files from control folder in MDT home directory.
    Then reinstall MDT 2013 update 1, update share. After this steps you should be able to regenerate boot file with no issues. Had the same problem, it was related with changes with ExtraFiles which i have made in tech prev release.

  54. John L says:

    Uninstall ADK and reinstall on another drive besides C: This worked perfectly for me.

Comments are closed.

Skip to main content