I have been struggling for the past 3 weeks trying to come up with a recovery solution for our loaner program so I dont have to reimage machines so often. What I wanted to do is capture an image, sysprep it, and have a bunch of scripts that run to install apps and install drivers using dpinst. When I capture the wim file I want to use it as the recovery image by setting it with reagent.exe . I want to then capture an image of the image (wim file within wim file) so that during windows setup when I do the initial image of the machine it does an apply of the first OOBE captured wim on the c: drive and apply of the recovery partition which is the r: drive which will be hidden from the user. I have ran into a few issues with this. Problem #1 my script to delete the directory that has the following issue, it keeps saying that there are empty folders which can not be deleted. These are folders that contained drivers that were used in the dpinst step Problem #2 after the first initial boot up and factory reset after log in the factory reset no longer uses my answer file that was used in sysprep. I am not sure whats going on here so I even tried putting the autounattend.xml in the root of the c: and it still gets ignored when the factory reset is done. Problem #3 I can not figure out where the reagentc.exe file writes to. If I am going to make a image with dism I need a way to make it so upon applying both index images I dont have to do the setreimage and setosimage commands again. Problem #4 I am not sure how I can set the id value of the disk to 27 and still make it so that the reagentc.exe finds the winre and install.wim files. My thoughts are that once I set it to hidden with diskpart it wont find the recovery options. Small Edit Problem #5 In the past I used to use firstlogoncommands and I would get this nice little check list in the upper left corner that says what has installed or succeeded. However since MS changed from the WAIK to the ADK I have not been able to get this to work again. Instead of installing applications one at a time, It just fires off all the executables at once instead of waiting for the first one to finish. I have had to switch to doing this via the setupcomplete.cmd batch file which is called in the autounattend.xml under firstlogoncommands. I just wish there was a way to change this back and have it to still work. Any ideas on how to solve these issues?