[GUIDE] [DISCUSSION] Windows Editions Reconstructions

Discussion in 'Windows 10' started by TesterMachineOS, Sep 3, 2024.

  1. xinso

    xinso MDL Guru

    Mar 5, 2009
    15,235
    15,384
    340
    #6181 xinso, Sep 2, 2026 at 00:35
    Last edited: Sep 2, 2026 at 04:54
  2. gailium119

    gailium119 MDL Addicted

    Oct 12, 2021
    954
    709
    30
    <update name="7c390e06f80bee5eb186024a440f90af">
    <package contained="false" integrate="hidden">
    <assemblyIdentity name="Server-Help-Package.ClientProfessional" version="10.0.16299.15" processorArchitecture="amd64" language="neutral" buildType="release" publicKeyToken="31bf3856ad364e35" />
    </package>
    </update>
    Seems to not work for this package
     
  3. sainfo

    sainfo MDL Addicted

    Dec 6, 2021
    712
    1,598
    30
    #6183 sainfo, Sep 2, 2026 at 05:07
    Last edited: Sep 2, 2026 at 05:13
    The tool is pretty simple: I based it on a tool from TesterMachineOS, tested it on version 2800 PRO—everything worked well, and in the end I got the coveted IoT LTSC. Yes, the tool works, but why bother with the 2800 when it’s a nobody? It’ll never become 26H2 anyway. That’s the first question, which is why I reworked it for the more promising 26300. The second question: why tie it to the bloated PRO version? It makes no sense. So I reworked it to serve as a template for the 26300 IoT Enterprise. It’s already been streamlined by Microsoft itself to remove a lot of bloat. Furthermore, I don’t consider using .cmd files for this kind of work to be the best choice, so I developed my tool using the more sophisticated and comprehensive PowerShell.

    But that's all just talk. The best approach would be to do all of this on build 26100.1742 IoT Enterprise LTSC. That would be the perfect solution. I started with that too, but unfortunately, it didn’t work out for me. It didn’t work because I couldn’t update 26100 to version 26300. I understand how to do it: update 26100 to 26200 first, and then don’t update to 26300. Updating from 26100 to 26200 isn’t a problem at all, but going from 26200 to 26300 isn’t quite so simple. Not just because they’re completely different systems.

    I don't see much point in posting my code, because I intuitively feel that your approach to solving this problem deserves more attention. And if you could share with me the tool you used to make it work, I’d be very grateful.
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. winosr25

    winosr25 MDL Addicted

    May 14, 2024
    527
    639
    30
    #6184 winosr25, Sep 2, 2026 at 07:41
    Last edited: Sep 2, 2026 at 07:50
    Like this, for example: construction 26300.9278.

    Code:
    @echo off
    
    setlocal EnableExtensions
    
    net session >nul 2>&1
    if %errorlevel% neq 0 (
        powershell -Command "Start-Process -FilePath '%~f0' -Verb RunAs"
    )
    
    whoami /groups | find "S-1-5-80-956008885" >nul 2>&1
    if %errorlevel% neq 0 (
        powershell -ExecutionPolicy Bypass -File "%~dp0Elevate_as_TI.ps1" -FilePath "%~f0" -WorkingDirectory "%~dp0."
        exit /b
    )
    
    ::Configuration
    set "_arch=amd64"
    set "_edition=Enterprises"
    set "_version=iotEnterprises"
    set "_lang=fr-fr"
    
    format X: /q /y
    
    mkdir X:\registry
    xcopy /cherkyq reg X:\registry
    
    pushd X:\registry
    call makeall.cmd >NUL 2>&1 || ( popd & exit /b 1 )
    popd
    
    mkdir X:\logs
    mkdir X:\temp
    mkdir X:\image
    mkdir X:\desktopimaging
    
    mkdir X:\image\Users
    mkdir X:\image\Windows
    mkdir X:\image\Users\Default
    mkdir X:\image\Windows\servicing
    mkdir X:\image\Windows\Setup
    mkdir X:\image\Windows\System32
    mkdir X:\image\Windows\WinSxS
    mkdir X:\image\Windows\servicing\Packages
    mkdir X:\image\Windows\servicing\Sessions
    mkdir X:\image\Windows\servicing\Version
    mkdir X:\image\Windows\servicing\Version\10.0.26100.1
    mkdir X:\image\Windows\Setup\State
    mkdir X:\image\Windows\System32\CatRoot
    mkdir X:\image\Windows\System32\CatRoot\{127D0A1D-4EF2-11D1-8608-00C04FC295EE}
    mkdir X:\image\Windows\System32\CatRoot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}
    mkdir X:\image\Windows\System32\config
    mkdir X:\image\Windows\System32\Dism
    mkdir X:\image\Windows\System32\downlevel
    mkdir X:\image\Windows\System32\SMI
    mkdir X:\image\Windows\System32\SMI\Schema
    mkdir X:\image\Windows\System32\SMI\Store
    mkdir X:\image\Windows\System32\SMI\Store\MACHINE
    mkdir X:\image\Windows\WinSxS\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9
    mkdir X:\image\Windows\WinSxS\amd64_microsoft-windows-s..llers-onecore-extra_31bf3856ad364e35_10.0.26100.1_none_20ce6b8e2bc58542
    mkdir X:\image\Windows\WinSxS\amd64_microsoft-windows-s..-installers-onecore_31bf3856ad364e35_10.0.26100.1_none_e8b018f40df304c9
    mkdir X:\image\Windows\WinSxS\Backup
    mkdir X:\image\Windows\WinSxS\Catalogs
    mkdir X:\image\Windows\WinSxS\FileMaps
    mkdir X:\image\Windows\WinSxS\Fusion
    mkdir X:\image\Windows\WinSxS\FusionDiff
    mkdir X:\image\Windows\WinSxS\Manifests
    mkdir X:\image\Windows\WinSxS\SettingsManifests
    mkdir X:\image\Windows\WinSxS\Temp
    mkdir X:\image\Windows\CbsTemp
    mkdir X:\image\Windows\Temp
    mkdir X:\image\Windows\Setup\State
    
    copy /Y X:\registry\out\NTUSER.DAT X:\image\Users\Default
    copy /Y X:\registry\out\BBI X:\image\Windows\System32\config
    copy /Y X:\registry\out\COMPONENTS X:\image\Windows\System32\config
    copy /Y X:\registry\out\BBI X:\image\Windows\System32\config
    copy /Y X:\registry\out\DEFAULT X:\image\Windows\System32\config
    copy /Y X:\registry\out\DRIVERS X:\image\Windows\System32\config
    copy /Y X:\registry\out\ELAM X:\image\Windows\System32\config
    copy /Y X:\registry\out\SAM X:\image\Windows\System32\config
    copy /Y X:\registry\out\SECURITY X:\image\Windows\System32\config
    copy /Y X:\registry\out\SOFTWARE X:\image\Windows\System32\config
    copy /Y X:\registry\out\SYSTEM X:\image\Windows\System32\config
    copy /Y X:\registry\out\SCHEMA.DAT X:\image\Windows\System32\SMI\Store\MACHINE
    
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\amd64_installed X:\image\Windows\servicing\Version\10.0.26100.1
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\CbsMsg.dll X:\image\Windows\servicing\Version
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\dpx.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\drvstore.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\mspatcha.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\poqexec.exe X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\smiengine.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\UpdateCompression.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\WcmTypes.xsd X:\image\Windows\System32\SMI\Schema
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\wdscore.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\wimgapi.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\wrpint.dll X:\image\Windows\System32
    
    copy /Y sxs\amd64_microsoft-windows-installer-engine_31bf3856ad364e35_10.0.26100.1_none_006e268c1c115986\msi.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-ntdll_31bf3856ad364e35_10.0.26100.1_none_55ca86a264ba469b\ntdll.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-os-kernel_31bf3856ad364e35_10.0.26100.1_none_69240a011cafaced\ntoskrnl.exe X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-packagemanager_31bf3856ad364e35_10.0.26100.1_none_e9cb6c7c5bd0e02c\SSShim.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-packagemanager_31bf3856ad364e35_10.0.26100.1_none_e9cb6c7c5bd0e02c\PkgMgr.exe X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9\wdscore.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-s..-installers-onecore_31bf3856ad364e35_10.0.26100.1_none_e8b018f40df304c9\cmifw.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-s..-installers-onecore_31bf3856ad364e35_10.0.26100.1_none_e8b018f40df304c9\NetSetupApi.dll X:\image\Windows\System32
    copy /Y sxs\amd64_microsoft-windows-s..-installers-onecore_31bf3856ad364e35_10.0.26100.1_none_e8b018f40df304c9\NetSetupEngine.dll X:\image\Windows\System32
    copy /Y files\migration.xml X:\image\Windows\WinSxS
    copy /Y files\State.ini X:\image\Windows\Setup\State
    
    xcopy /cherkyq sxs\amd64_microsoft-windows-d..-winproviders-image_31bf3856ad364e35_10.0.26100.1_none_9bd31d92924ee2ec X:\image\Windows\System32\Dism
    xcopy /cherkyq sxs\amd64_microsoft-windows-d..-winproviders-local_31bf3856ad364e35_10.0.26100.1_none_212094eaee0b9236 X:\image\Windows\System32\Dism
    xcopy /cherkyq sxs\amd64_microsoft-windows-d..ing-management-core_31bf3856ad364e35_10.0.26100.1_none_2827ce65934bb5b9 X:\image\Windows\System32\Dism
    xcopy /cherkyq sxs\amd64_microsoft-windows-d..ing-management-host_31bf3856ad364e35_10.0.26100.1_none_2a5f1cdd91df6622 X:\image\Windows\System32\Dism
    xcopy /cherkyq sxs\amd64_microsoft-windows-servicingcommon_31bf3856ad364e35_10.0.26100.1_none_3850cb60846b3bc0 X:\image\Windows\System32\Dism
    
    xcopy /cherkyq sxs\amd64_microsoft-windows-c..namespace-downlevel_31bf3856ad364e35_10.0.26100.1_none_d4ed521cfa7079b8 X:\image\Windows\System32\downlevel
    xcopy /cherkyq sxs\amd64_microsoft-windows-m..namespace-downlevel_31bf3856ad364e35_10.0.26100.1_none_6e3617b64262c41b X:\image\Windows\System32\downlevel
    xcopy /cherkyq sxs\amd64_microsoft-windows-m..namespace-downlevel_31bf3856ad364e35_10.0.26100.1_none_3886c015fe3eadee X:\image\Windows\System32\downlevel
    xcopy /cherkyq sxs\amd64_microsoft-windows-m..namespace-downlevel_31bf3856ad364e35_10.0.26100.1_none_c4588310e9a6e860 X:\image\Windows\System32\downlevel
    xcopy /cherkyq sxs\amd64_microsoft-windows-o..namespace-downlevel_31bf3856ad364e35_10.0.26100.1_none_3e10cb28eab8aa26 X:\image\Windows\System32\downlevel
    
    xcopy /cherkyq sxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9 X:\image\Windows\WinSxS\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_10.0.26100.1_none_065309a92fd714e9
    xcopy /cherkyq sxs\amd64_microsoft-windows-s..llers-onecore-extra_31bf3856ad364e35_10.0.26100.1_none_20ce6b8e2bc58542 X:\image\Windows\WinSxS\amd64_microsoft-windows-s..llers-onecore-extra_31bf3856ad364e35_10.0.26100.1_none_20ce6b8e2bc58542
    xcopy /cherkyq sxs\amd64_microsoft-windows-s..-installers-onecore_31bf3856ad364e35_10.0.26100.1_none_e8b018f40df304c9 X:\image\Windows\WinSxS\amd64_microsoft-windows-s..-installers-onecore_31bf3856ad364e35_10.0.26100.1_none_e8b018f40df304c9
    xcopy /cherkyq desktopimaging X:\desktopimaging
    
    echo Installing SKUs...
    set WINDOWS_WCP_INSKUASSEMBLY=1
    X:\desktopimaging\cbsx.exe /sp /m:sxs\Microsoft-Windows-%_edition%Edition~31bf3856ad364e35~amd64~~10.0.26100.1742.mum /o:X:\image\Windows
    X:\desktopimaging\cbsx.exe /ip /m:sxs\Microsoft-Windows-%_edition%Edition~31bf3856ad364e35~amd64~~10.0.26100.1742.mum /o:X:\image\Windows
    X:\desktopimaging\cbsx.exe /sp /m:sxs\Microsoft-Windows-%_edition%Edition~31bf3856ad364e35~amd64~~10.0.26100.9278.mum /o:X:\image\Windows
    set WINDOWS_WCP_INSKUASSEMBLY=
    
    echo.
    echo enable 26h2...
    dism /scratchdir:"X:\temp" /image:X:\image /add-Package /PackagePath:"update\Windows11.0-KB5121794-x64.cab"
    
    echo Installing 26h2...
    set WINDOWS_WCP_INSKUASSEMBLY=1
    X:\desktopimaging\cbsx.exe /ip /m:sxs\Microsoft-Windows-%_edition%Edition~31bf3856ad364e35~amd64~~10.0.26100.9278.mum /o:X:\image\Windows
    set WINDOWS_WCP_INSKUASSEMBLY=
    
    echo.
    echo install lang %_lang%...
    dism /scratchdir:"X:\temp" /image:X:\image /add-Package /PackagePath:sxs\Microsoft-Windows-Client-LanguagePack-Package~31bf3856ad364e35~amd64~%_lang%~10.0.26100.9278.mum
    
    echo.
    echo Setting language configuration...
    dism /scratchdir:"X:\temp" /image:X:\image /set-allintl:%_lang%
    
    echo.
    echo Apply %_version%Edition...
    copy X:\image\Windows\servicing\Editions\%_version%Edition.xml X:\image\Windows\%_version%.xml
    dism /scratchdir:"X:\temp" /image:X:\image /apply-unattend:X:\image\Windows\%_version%.xml
    
    ::Cleanup
    echo.
    echo Cleaning up the image...
    dism /scratchdir:"X:\temp" /image:X:\image /apply-unattend:files\%_edition%.xml
    dism /scratchdir:"X:\temp" /image:X:\image /cleanup-image /analyzecomponentstore
    dism /scratchdir:"X:\temp" /image:X:\image /cleanup-image /startcomponentcleanup
    
    echo.
    echo Finishing the image...
    REG.EXE LOAD HKLM\CBSS_SOFTWARE X:\image\Windows\System32\config\SOFTWARE
    REG.EXE LOAD HKLM\CBSS_SYSTEM X:\image\Windows\System32\config\SYSTEM
    
    REG.EXE IMPORT files\imagestate.reg
    
    REG.EXE UNLOAD HKLM\CBSS_SOFTWARE
    REG.EXE UNLOAD HKLM\CBSS_SYSTEM
    
    echo.
    echo captureimg the image...
    dism /capture-image /imagefile:install.wim /capturedir:X:\image /name:"Windows 11 %_version% 26H2" /compress:max
    
    ::clean
    echo.
    echo clean...
    format X: /q /y
    
    echo.
    pause
    exit
     
  5. pp03

    pp03 MDL Expert

    Apr 12, 2014
    1,802
    708
    60
    link for Criar_Arquivo_CAT at op is dead
     
  6. pp03

    pp03 MDL Expert

    Apr 12, 2014
    1,802
    708
    60
    due to @Bira request 22621 startern x64 constructed by MUCS

    Code:
    C:\Users\Administrator\Downloads\mucs>dism /image:mount /get-currentedition /english
    
    Deployment Image Servicing and Management tool
    Version: 10.0.22621.2792
    
    Image Version: 10.0.22621.1
    
    Current edition is:
    
    Current Edition : StarterN
    
    The operation completed successfully.
     
  7. FengXi

    FengXi MDL Novice

    Aug 27, 2026
    16
    6
    0
    I am trying to build a native Windows Client Professional image at
    20348.5499, and I would appreciate a sanity check on the update metadata.

    The base image is:

    - Native Client Professional, 20348.1 x64
    - Native en-US Client ISO
    - Native zh-CN Client ISO / official Client Language Pack ESD
    - Chinese language features and FoD are already installed successfully
    - The target is Client Professional, not Server or EnterpriseS

    The problem is that my 20348.5499 UUP set contains ServerDatacenter language ESDs and Server/WinPE update packages, but no native Professional LCU entry.

    I used the structure from UpdateOS_v5.1 (`Mod_SSU.cmd`, `Mod_LCU.cmd`, `Make_CU.cmd`) and a native Professional 20348.1 package graph to build isolated Professional SSU and LCU packages. The original source CABs were kept unchanged, and I did not use `/IgnoreCheck`.

    The current result is interesting:

    - The reconstructed SSU 20348.5480 is accepted by CBS and appears as Installed.
    - The reconstructed LCU 20348.5499 can be processed without a version-mismatch error.
    - CBS reports a successful servicing session and component version 5.0.20348.5499.
    - The Professional 20348.5499 root package is Installed after the edition transition, while the old Professional 20348.1 root becomes Absent.
    - `DISM /Get-CurrentEdition` reports Professional.
    - `/Cleanup-Image /ScanHealth` reports zero corruption.
    - `pending.xml` is absent.
    - However, `Package_for_RollupFix 20348.5499.1.21` appears as `Staged` in the package listing rather than `Installed`.
    - WIM metadata still reports `Image Version: 10.0.20348.1`, although CBS reports the 5499 component version.

    My questions are:

    1. Is a manually reconstructed LCU expected to remain `Staged`, or does this indicate that a wrapper/state-transition package is still missing?
    2. Which metadata must be preserved or regenerated for a Client Pro LCU: the edition wrappers, `Package_for_RollupFix`, `Package_for_ServicingStack`, `TargetVersion`, `update.ses`, `TOC.xml`, or the post-update edition-conversion session?
    3. Can the generic component payload from the Server LCU be reused for Client Pro if the correct Client wrappers and catalogs are provided?
    4. Is `stageSxS-principalis` required for this kind of reconstruction, and are there known 20348 Client Pro inputs or examples?
    5. Should the WIM image version be updated separately, or is the CBS package state the authoritative result?

    I can provide the relevant CBS log, LCU log, and `Sessions.xml` excerpts if useful. I am mainly looking for guidance on the correct package graph and wrapper structure.
     
  8. pp03

    pp03 MDL Expert

    Apr 12, 2014
    1,802
    708
    60
    #6189 pp03, Sep 2, 2026 at 09:43
    Last edited: Sep 2, 2026 at 09:52
    due to @Bira request 22621.1 startern x64 pl constructed by MUCS

    upload_2026-9-2_10-42-47.png

    start does work, win+x does not

    oobe works when you are online (didn't check when offline, but i guess that unattend.xml in windows\panther is required)
     
  9. pp03

    pp03 MDL Expert

    Apr 12, 2014
    1,802
    708
    60
    due to @Bira request working on 28000 startern
     
  10. Ace2

    Ace2 MDL Guru

    Oct 10, 2014
    2,252
    1,963
    90
    #6192 Ace2, Sep 2, 2026 at 10:34
    Last edited: Sep 2, 2026 at 10:41
    Post #6142
    +
    massgrave.dev/windows_ltsc_links
     
  11. pp03

    pp03 MDL Expert

    Apr 12, 2014
    1,802
    708
    60
    due to @Bira request 28000 startern x64 constructed by MUCS

    Code:
    C:\Users\Administrator\Downloads\mucs>dism /image:mount /get-currentedition /english
    
    Deployment Image Servicing and Management tool
    Version: 10.0.22621.2792
    
    Image Version: 10.0.28000.1
    
    Current edition is:
    
    Current Edition : StarterN
    
    The operation completed successfully.
     
  12. alexiv

    alexiv MDL Novice

    Jan 16, 2019
    30
    27
    0
    What is this file?
     
  13. pp03

    pp03 MDL Expert

    Apr 12, 2014
    1,802
    708
    60
    #6195 pp03, Sep 2, 2026 at 14:50
    Last edited: Sep 2, 2026 at 14:57
    due to @Bira request 28000.1 startern x64 pl constructed by MUCS

    upload_2026-9-2_15-49-15.png

    start does work, win+x does not

    unattend.xml required in windows\panther
     
  14. FengXi

    FengXi MDL Novice

    Aug 27, 2026
    16
    6
    0
    I tried add 5499 ssu and lcu to pro .1 and get
    Image Version: 10.0.20348.1

    Current edition is:

    Error: 5023

    The group or resource is not in the correct state to perform the requested operation.
    I tried core .1 add ssu and lcu and still .1 also can't convert to professional
     
  15. gailium119

    gailium119 MDL Addicted

    Oct 12, 2021
    954
    709
    30
    Yeah 15063 licenses should be a bit too old for 28000
    Wonder if Windows 11 Starter will ever leak
     
  16. pp03

    pp03 MDL Expert

    Apr 12, 2014
    1,802
    708
    60
    interesting that win+x does work for starter
     
  17. gailium119

    gailium119 MDL Addicted

    Oct 12, 2021
    954
    709
    30
    They probably used license of another sku in system to achieve that
     
  18. pp03

    pp03 MDL Expert

    Apr 12, 2014
    1,802
    708
    60
    enterprise probably