Windows 10: Image Windows 10 laptops with DISM (or other free tool)

Page 5 of 7 FirstFirst ... 34567 LastLast

  1. Posts : 13,969
    Windows 10 Pro
       04 Mar 2017 #41

    xy677 said: View Post
    Thanks Kari, I'm starting from the beginning again to see if it makes any difference!
    Just to let you know, I have to take a break. I will promise I will continue testing and troubleshooting tomorrow. I've done pretty much nothing else today than this, I am sorry but I need to stop now for today.
      My ComputerSystem Spec

  2.    04 Mar 2017 #42

    That's ok, I had to take a break too! I'll post some more findings tomorrow.
      My ComputerSystem Spec

  3.    04 Mar 2017 #43

    So after starting from the beginning again I have come to the following conclusion(s):

    1. My answer file works when I reboot the VM after running /generalize/ oobe /reboot and the unattended install works 100%
    2. If I take the customised install.wim file and use dism /apply-image after booting off the original Windows 10 ISO, the answer file works and the unattended install (again) works 100%
    3. This is where it goes wrong: If I open the original Win10 ISO in UltraISO and then replace the original install.wim with my own custom install.wim and create a new (customised) ISO with my own install.wim file then when I boot off this new ISO it prompts me at the language screen for user input. So I'm guessing that either I am doing something wrong in UltraISO or this program doesn't work properly with updating Windows 10 ISOs.


    I'm going to try seeing if there are any other options to update an original Windows 10 ISO with a customised install.wim tomorrow.
      My ComputerSystem Spec

  4.    05 Mar 2017 #44

    I've got an update :)

    I did some experimenting this morning and the only way I have been able to automate the language screens, disk configuration etc when installing Windows 10 is to add the AutoUnattend.xml to the root of the ISO/bootable USB drive. If I do this then Windows will install itself automatically and all I have to do is press any key to boot off the ISO/USB and a few minutes later I will be presented with a Windows desktop. The AutoUnattend.xml looks as follows so far:

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <unattend xmlns="urn:schemas-microsoft-com:unattend">
        <settings pass="windowsPE">
            <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <SetupUILanguage>
                    <UILanguage>en-GB</UILanguage>
                </SetupUILanguage>
                <InputLocale>0809:00000809</InputLocale>
                <SystemLocale>en-GB</SystemLocale>
                <UILanguage>en-GB</UILanguage>
                <UserLocale>en-GB</UserLocale>
                <UILanguageFallback>en-GB</UILanguageFallback>
            </component>
            <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <UserData>
                    <AcceptEula>true</AcceptEula>
                </UserData>
                <ImageInstall>
                    <OSImage>
                        <InstallFrom>
                            <MetaData wcm:action="add">
                                <Key>/image/index</Key>
                                <Value>1</Value>
                            </MetaData>
                        </InstallFrom>
                        <InstallTo>
                            <DiskID>0</DiskID>
                            <PartitionID>4</PartitionID>
                        </InstallTo>
                    </OSImage>
                </ImageInstall>
                <DiskConfiguration>
                    <Disk wcm:action="add">
                        <CreatePartitions>
                            <CreatePartition wcm:action="add">
                                <Order>1</Order>
                                <Size>1024</Size>
                                <Type>Primary</Type>
                            </CreatePartition>
                            <CreatePartition wcm:action="add">
                                <Order>2</Order>
                                <Size>100</Size>
                                <Type>EFI</Type>
                            </CreatePartition>
                            <CreatePartition wcm:action="add">
                                <Order>3</Order>
                                <Size>128</Size>
                                <Type>MSR</Type>
                            </CreatePartition>
                            <CreatePartition wcm:action="add">
                                <Order>4</Order>
                                <Extend>true</Extend>
                                <Type>Primary</Type>
                            </CreatePartition>
                        </CreatePartitions>
                        <DiskID>0</DiskID>
                        <WillWipeDisk>true</WillWipeDisk>
                        <ModifyPartitions>
                            <ModifyPartition wcm:action="add">
                                <Order>1</Order>
                                <PartitionID>1</PartitionID>
                                <Format>NTFS</Format>
                                <Label>WinRE</Label>
                                <TypeID>DE94BBA4-06D1-4D40-A16A-BFD50179D6AC</TypeID>
                            </ModifyPartition>
                            <ModifyPartition wcm:action="add">
                                <Order>2</Order>
                                <PartitionID>2</PartitionID>
                                <Label>System</Label>
                                <Format>FAT32</Format>
                            </ModifyPartition>
                            <ModifyPartition wcm:action="add">
                                <Order>3</Order>
                                <PartitionID>3</PartitionID>
                            </ModifyPartition>
                            <ModifyPartition wcm:action="add">
                                <Order>4</Order>
                                <PartitionID>4</PartitionID>
                                <Letter>C</Letter>
                                <Label>Windows</Label>
                                <Format>NTFS</Format>
                            </ModifyPartition>
                        </ModifyPartitions>
                    </Disk>
                </DiskConfiguration>
            </component>
        </settings>
        <settings pass="oobeSystem">
            <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <OOBE>
                    <HideEULAPage>true</HideEULAPage>
                    <ProtectYourPC>1</ProtectYourPC>
                </OOBE>
            </component>
        </settings>
    </unattend>
    NB: This is for a UEFI install

    So what I did was try this out on an original Windows 10 ISO. I basically just updated the original ISO to have the
    AutoUnattend.xml in the root. This worked 100% using the original install.wim.

    After getting the AutoUnattend.xml to work, I then updated the original Windows 10 ISO with AutoUnattend.xml and my customised install.wim. This failed miserably. It basically automated the install of Windows 10 (well mostly) but I was then presented with a default Windows 10 desktop (ie: ALL my customisation was gone! Even the programs I installed like Office 2016 wasn't there).

    So I'm confused, why is it when I use AutoUnattend.xml with my customised install.wim file it (mostly) automated the install but then does a default install of Windows and ignores my customisations in the install.wim file?

    Really confused! Is it because I have AutoUnattend.xml in the root of the ISO/USB and have unattend.xml in c:\windows\system32\sysprep in my customised install.wim?

    I'm guessing that my approach to this may be wrong but basically I am trying to do an unattended install of Windows 10 from ISO/USB and to have a customised version of Windows installed with all my changes/applications etc.
      My ComputerSystem Spec


  5. Posts : 13,969
    Windows 10 Pro
       05 Mar 2017 #45

    @xy677

    OK, mystery solved. Got it right this time.

    My issue was false approach; I am so used to boot from PE and use DISM to apply a sysprepped / generalized image from a network share (which works perfectly) that I didn't even think the key differences in applying an image with DISM compared to installing from ISO (Flash drive / DVD).

    Will do two more test installs, both on Hyper-V vm and physical machine, posting about how I did it in an hour or two.
      My ComputerSystem Spec

  6.    05 Mar 2017 #46

    Kari said: View Post
    @xy677

    OK, mystery solved. Got it right this time.

    My issue was false approach; I am so used to boot from PE and use DISM to apply a sysprepped / generalized image from a network share (which works perfectly) that I didn't even think the key differences in applying an image with DISM compared to installing from ISO (Flash drive / DVD).

    Will do two more test installs, both on Hyper-V vm and physical machine, posting about how I did it in an hour or two.
    Well I think it's finally working for me!! I don't know how or why but somehow having I must have mixed up installing my custom ISO with the original ISO.

    Long story short, I have created a custom ISO with my customised install.wim AND put the Autounattend.xml in the root of the ISO and am now able to do a fully unattended install (with the exception of entering my username which I want) and have a fully customised desktop with Office 2016 installed and fully patched.

    I tried using my custom ISO by booting off it in VMware Workstation and I also created a bootabled USB using the original ISO and then overwriting the origianal install.wim with my own and copying the Autounattend.xml to the root of the USB and both methods worked great! Since my install.wim is about 8GB in size I had to use Rufus to create a bootable USB key using NTFS so that I could use large files in the file system but it worked (FAT32 is a no no for files larger than 4GB in size).

    The one annoying thing I found when customising a Windows 10 desktop is that you can't use Settings to customise certain settings when Windows isn't activated? Is there a way around this? For now I have been editing the registry but it's a pain. Can you activate Windows before you sysprep so you can customise all the settings you want using Settings?

    I also used DISM to compress my wim file and used DISM to do a cleanup of all the Windows Updated which saved a couple gigabytes in space.

    Look forward to your findings and thanks so much for all your help!
      My ComputerSystem Spec


  7. Posts : 13,969
    Windows 10 Pro
       05 Mar 2017 #47

    Method I use to customize desktop in Audit Mode when Settings > Personalise is not working due Windows being not activated is I create a theme file on another machine (theme, background, colours, sounds, screensaver), copy that file to VM in Audit Mode and apply it.

    Could you please post the final answer file you used?
      My ComputerSystem Spec

  •    05 Mar 2017 #48

    Kari said: View Post
    Method I use to customize desktop in Audit Mode when Settings > Personalise is not working due Windows being not activated is I create a theme file on another machine (theme, background, colours, sounds, screensaver), copy that file to VM in Audit Mode and apply it.

    Could you please post the final answer file you used?
    That's a good idea, I'll have to look into that.

    unattend.xml:
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <unattend xmlns="urn:schemas-microsoft-com:unattend">
        <settings pass="specialize">
            <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <CopyProfile>true</CopyProfile>
                <TimeZone>GMT Standard Time</TimeZone>
                <ComputerName>RENAME</ComputerName>
            </component>
        </settings>
        <settings pass="oobeSystem">
            <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <InputLocale>0809:00000809</InputLocale>
                <SystemLocale>en-GB</SystemLocale>
                <UILanguage>en-GB</UILanguage>
                <UserLocale>en-GB</UserLocale>
                <UILanguageFallback>en-GB</UILanguageFallback>
            </component>
            <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <OOBE>
                    <HideEULAPage>true</HideEULAPage>
                    <HideOEMRegistrationScreen>true</HideOEMRegistrationScreen>
                    <HideOnlineAccountScreens>true</HideOnlineAccountScreens>
                    <HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
                    <ProtectYourPC>1</ProtectYourPC>
                    <UnattendEnableRetailDemo>false</UnattendEnableRetailDemo>
                </OOBE>
                <TimeZone>GMT Standard Time</TimeZone>
            </component>
        </settings>
    </unattend>
    AutoUnattend.xml: (NB: this does UEFI partitioning!)
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <unattend xmlns="urn:schemas-microsoft-com:unattend">
        <settings pass="windowsPE">
            <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <SetupUILanguage>
                    <UILanguage>en-GB</UILanguage>
                </SetupUILanguage>
                <InputLocale>0809:00000809</InputLocale>
                <SystemLocale>en-GB</SystemLocale>
                <UILanguage>en-GB</UILanguage>
                <UserLocale>en-GB</UserLocale>
                <UILanguageFallback>en-GB</UILanguageFallback>
            </component>
            <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <UserData>
                    <AcceptEula>true</AcceptEula>
                </UserData>
                <ImageInstall>
                    <OSImage>
                        <InstallFrom>
                            <MetaData wcm:action="add">
                                <Key>/image/index</Key>
                                <Value>1</Value>
                            </MetaData>
                        </InstallFrom>
                        <InstallTo>
                            <DiskID>0</DiskID>
                            <PartitionID>4</PartitionID>
                        </InstallTo>
                    </OSImage>
                </ImageInstall>
                <DiskConfiguration>
                    <Disk wcm:action="add">
                        <CreatePartitions>
                            <CreatePartition wcm:action="add">
                                <Order>1</Order>
                                <Size>1024</Size>
                                <Type>Primary</Type>
                            </CreatePartition>
                            <CreatePartition wcm:action="add">
                                <Order>2</Order>
                                <Size>100</Size>
                                <Type>EFI</Type>
                            </CreatePartition>
                            <CreatePartition wcm:action="add">
                                <Order>3</Order>
                                <Size>128</Size>
                                <Type>MSR</Type>
                            </CreatePartition>
                            <CreatePartition wcm:action="add">
                                <Order>4</Order>
                                <Extend>true</Extend>
                                <Type>Primary</Type>
                            </CreatePartition>
                        </CreatePartitions>
                        <DiskID>0</DiskID>
                        <WillWipeDisk>true</WillWipeDisk>
                        <ModifyPartitions>
                            <ModifyPartition wcm:action="add">
                                <Order>1</Order>
                                <PartitionID>1</PartitionID>
                                <Format>NTFS</Format>
                                <Label>WinRE</Label>
                                <TypeID>DE94BBA4-06D1-4D40-A16A-BFD50179D6AC</TypeID>
                            </ModifyPartition>
                            <ModifyPartition wcm:action="add">
                                <Order>2</Order>
                                <PartitionID>2</PartitionID>
                                <Label>System</Label>
                                <Format>FAT32</Format>
                            </ModifyPartition>
                            <ModifyPartition wcm:action="add">
                                <Order>3</Order>
                                <PartitionID>3</PartitionID>
                            </ModifyPartition>
                            <ModifyPartition wcm:action="add">
                                <Order>4</Order>
                                <PartitionID>4</PartitionID>
                                <Letter>C</Letter>
                                <Label>Windows</Label>
                                <Format>NTFS</Format>
                            </ModifyPartition>
                        </ModifyPartitions>
                    </Disk>
                </DiskConfiguration>
            </component>
        </settings>
        <settings pass="oobeSystem">
            <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <OOBE>
                    <HideEULAPage>true</HideEULAPage>
                    <ProtectYourPC>1</ProtectYourPC>
                </OOBE>
            </component>
        </settings>
    </unattend>
    Just for fun I timed installing Windows using my customised ISO and it took just under 8min which is pretty impressive considering it has Windows 10 install FULLY patched, Office/Visio 2016 FULLY patched and has all my customisation! Just installing Windows Updates took me about an hour to do on it's own
      My ComputerSystem Spec


  • Posts : 13,969
    Windows 10 Pro
       05 Mar 2017 #49

    OK, no bigger difference in our autounattend file except I've been testing today in Hyper-V Generation 1 VM which means it's BIOS / MBR whereas your file is for UEFi / GPT.
      My ComputerSystem Spec


  • Posts : 13,969
    Windows 10 Pro
       05 Mar 2017 #50

    BTW, the MSR partition only needs to be 16 MB. I also noticed you have set one gig for RE partition, half of that is enough. Of course there's no harm done with bigger partitions.
      My ComputerSystem Spec


  •  
    Page 5 of 7 FirstFirst ... 34567 LastLast

    Related Threads
    Performance & Maintenance Use DISM to Repair Windows 10 Image in Tutorials
    How to Repair Windows 10 Image using DISM If a Windows image becomes unserviceable, you can use the Deployment Imaging and Servicing Management (DISM) tool to update the files and correct the problem. For example, you would use DISM to fix...
    Hello everyone, I've been having a terrible time trying to diagnose and fix corrupted system files. I have recently updated to windows 10 during the free upgrade process. I was running Windows 7 Pro before I updated. I have tried...
    Solved Error 0x800f081f when using DISM tool in Performance & Maintenance
    Hello, Windows 10 power user here. I've been viewing help topics here for some time and found this forum very useful. However, there is one problem that I can't seem to solve. Whenever I use the DISM tool to repair Windows 10, I get the error...
    Simply, why doesn't Dism /Online /Cleanup-Image /RestoreHealth work in Windows 10? Is there a way to get this or a similar command to self repair your installation in Windows 10? 48645
    Hello everyone I have been trying to fix my windows 10 corrupted files but I have been unabled to recover it. I tried every possible way of recovering using DISM commands, but to no avail. I tried also the sfc /scannow but as usual this command...
    Our Sites
    Site Links
    About Us
    Windows 10 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. "Windows 10" and related materials are trademarks of Microsoft Corp.

    Designer Media Ltd
    All times are GMT -5. The time now is 18:13.
    Find Us