[Solved(sort of)] change oem to retail during Win10 deployment from WinPE

Discussion in 'Windows 10' started by Flipp3r, May 10, 2019.

  1. Flipp3r

    Flipp3r MDL Expert

    Feb 11, 2009
    1,965
    908
    60
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  2. coleoptere2007

    coleoptere2007 MDL Guru

    Apr 8, 2008
    3,311
    1,938
    120
    #2 coleoptere2007, May 10, 2019
    Last edited: May 10, 2019
    no idea
     
  3. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,761
    450
    When you are talking about OEM and RETAIL, do you mean OEM as in a system with a MSDM for Home or Pro? And by retail you mean they have a retail key?

    If this is correct, then they only have to enter the MSDM or retail key after applying the image has finished/reached OOBE for activation,

    I have to mention that i never applied an image from a winpe image, i apply them using @murphy78 his Diskpart and Apply Image script inside the setup index of boot.wim.

    But you can play with this too, to not have the user to have to use dism set-edition manually:

    You can create an install.wim containing Home and Pro by dropping the install.wim on this cmd (test with a copy of your install.wim):

    Code:
    @echo off
    
    REM change wording if needed..
    TITLE Admin Check
    echo Checking for admin...
    
    if not "%1"=="am_admin" (powershell start -verb runas '%0' am_admin & exit /b)
    
    :gotAdmin
        pushd "%CD%"
        CD /D "%~dp0"
    cls
    @echo off
    
    Echo Home
    imagex /flags "Core" /info "install.wim" 1 "Win 10 Home OEM" "Win 10 Home OEM"
    
    Echo Creating Pro
    Dism /mount-wim /wimfile:install.wim /index:1 /mountdir:c:\mount
    dism /Image:C:\Mount /Set-Edition:Professional /Channel:OEM
    dism /Unmount-Image /MountDir:C:\Mount /Commit /Append
    imagex.exe /flags "Professional" /info "install.wim" 2 "Win 10 Professional OEM" "Win 10 Professional OEM"
    
    pause
    
    Progress:
    Code:
    Home
    
    ImageX Tool for Windows
    Copyright (C) Microsoft Corp. All rights reserved.
    Version: 10.0.10011.16384
    
    
    Successfully set image name: [Win 10 Home OEM]
    
    Successfully set image description: [Win 10 Home OEM]
    
    Successfully set image flags: [Core]
    
    
    Creating Pro OEM
    
    Deployment Image Servicing and Management tool
    Version: 10.0.17763.1
    
    Mounting image
    [==========================100.0%==========================]
    The operation completed successfully.
    
    Deployment Image Servicing and Management tool
    Version: 10.0.17763.1
    
    Image Version: 10.0.18362.86
    
    Starting to update components...
    Starting to install product key...
    Finished installing product key.
    
    Adding package Microsoft-Windows-ProfessionalEdition~31bf3856ad364e35~x86~~10.0.18362.86
    Removing package Microsoft-Windows-CoreEdition~31bf3856ad364e35~x86~~10.0.18362.86
    [==========================100.0%==========================]
    
    Finished updating components.
    
    Starting to apply edition-specific settings...
    Finished applying edition-specific settings.
    
    The operation completed successfully.
    
    Deployment Image Servicing and Management tool
    Version: 10.0.17763.1
    
    Saving image
    [==========================100.0%==========================]
    Unmounting image
    [==========================100.0%==========================]
    The operation completed successfully.
    
    ImageX Tool for Windows
    Copyright (C) Microsoft Corp. All rights reserved.
    Version: 10.0.10011.16384
    
    
    Successfully set image name: [Win 10 Professional OEM]
    
    Successfully set image description: [Win 10 Professional OEM]
    
    Successfully set image flags: [Professional]
    
    
    Press any key to continue . . .
    
    Result:
    Code:
    
    K:\>Dism /Get-WimInfo /WimFile:install.wim
    
    Deployment Image Servicing and Management tool
    Version: 10.0.17763.1
    
    Details for image : install.wim
    
    Index : 1
    Name : Win 10 Home OEM
    Description : Win 10 Home OEM
    Size : 10,011,149,397 bytes
    
    Index : 2
    Name : Win 10 Professional OEM
    Description : Win 10 Professional OEM
    Size : 10,155,751,425 bytes
    
    The operation completed successfully.
    
    K:\>
    
    Now the Home users can apply the first index and the Pro user index 2. And use the key to activate it (when still needed).
     
  4. murphy78

    murphy78 MDL DISM Enthusiast

    Nov 18, 2012
    7,389
    11,614
    240
    I think it might be the setup program itself that is pulling the oem key from the bios/uefi.
    If you know your way around diskpart you can try formatting the system partition and applying the image yourself.
    I think you'd still need to use some kind of winrecfg to assign the proper files and booting to the new install though.
    The autounattend.xml stuff can set a product key, but I'm unsure if that would solve your issue.

    Sorry I don't know exactly how to tackle this one because I've never had an oem system with key myself to play with.
     
  5. Enthousiast

    Enthousiast MDL Tester

    Oct 30, 2009
    47,274
    94,761
    450
    You can test in VMWare using a bios rom with an inserted msdm.

    The xml is not used when applying the image, or is it?
     
  6. murphy78

    murphy78 MDL DISM Enthusiast

    Nov 18, 2012
    7,389
    11,614
    240
    The autounattend.xml has different sections for each part. I think they are clearly labeled but it's been such a long time and I've never used them this way so I am unsure.
    I *think* it would be obvious by looking at the xml as to which part of setup it affects. I also seem to remember it being copied over to a system folder by the default setup program so I don't remember if my script even does that.
     
  7. Atari800XL

    Atari800XL MDL Addicted

    Apr 3, 2011
    957
    1,676
    30
    Do you mean the unattend.xml? Yes, it is used when you apply manually from PE, just not the <settings pass="windowsPE"> parts.

    I think maybe JFX (WinNTSetup author) can help with Flipp3r's question...

    EDIT: Posted this at the same time as Murphy did...
    EDIT2: I'm sure Flipp3r's aware of the unattend.xml sections, as he mentioned the \panther folder, which is where the xml goes when you do your manual applies.
     
  8. Flipp3r

    Flipp3r MDL Expert

    Feb 11, 2009
    1,965
    908
    60
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  9. Flipp3r

    Flipp3r MDL Expert

    Feb 11, 2009
    1,965
    908
    60
    Yeah I've tried including the key in the unattend.xml but that still didn't work. Windows did mark it as processed (and removed the key from the file) but windows remained unchanged.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  10. Flipp3r

    Flipp3r MDL Expert

    Feb 11, 2009
    1,965
    908
    60
    I find it really weird that I can't change the Channel of Home(Core) but if I upgrade to Pro (or any other higher edition) I can set any Channel I like (using Windows 10 Default Manufacturing Keys).
    The slmgr /ipk command works but I shouldn't need to do that. I can try adding it to my FirstLogon.cmd but surely there is a way to successfully do this offline (from WinPE)...
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  11. murphy78

    murphy78 MDL DISM Enthusiast

    Nov 18, 2012
    7,389
    11,614
    240
    Well it might also be that the reboot setup phase also checks the oem bios stuff and tries to over-write things.
    You might be able to make a setupcomplete.cmd script to run the slmgr commands in a passive way that doesn't require user input.

    Edit: I think I remember why the unattend.xml doesn't work. It skips using it if it detects any oem stuff in the bios.
     
  12. AveYo

    AveYo MDL Expert

    Feb 10, 2009
    1,836
    5,693
    60
    Can confirm this on several batches of oem laptops that were initially served with windows 10 pre-installed, then to lower the price had a linux distro on top and the firmware was patched sort of half-trough. Tried lots of stuff but in the end it was simpler to just use setupcomplete.cmd
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  13. Flipp3r

    Flipp3r MDL Expert

    Feb 11, 2009
    1,965
    908
    60
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  14. Flipp3r

    Flipp3r MDL Expert

    Feb 11, 2009
    1,965
    908
    60
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  15. Flipp3r

    Flipp3r MDL Expert

    Feb 11, 2009
    1,965
    908
    60
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  16. sebus

    sebus MDL Guru

    Jul 23, 2008
    6,356
    2,026
    210
    Isn't that exactly WinPE anyway?

    I do every install from some version of PE (whatever I happen to have in my pocket at the time...)
     
  17. AveYo

    AveYo MDL Expert

    Feb 10, 2009
    1,836
    5,693
    60
    I always use the windows setup - shift+f10 - cmd - total commander stuffed with plugins (I put it on every usb stick with a batch to launch the correct architecture) - that's all the GUI i need.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...