[ARCHIVED] Windows Editions Reconstruction Project

Discussion in 'Windows 10' started by whatever127, Jan 10, 2020.

Thread Status:
Not open for further replies.
  1. Sum_Ting_Wong

    Sum_Ting_Wong MDL Member

    Jan 30, 2024
    157
    229
    10
    #14881 Sum_Ting_Wong, Mar 16, 2024
    Last edited: Mar 16, 2024
  2. xinso

    xinso MDL Guru

    Mar 5, 2009
    13,677
    14,414
    340
  3. xinso

    xinso MDL Guru

    Mar 5, 2009
    13,677
    14,414
    340
  4. Yarrak31

    Yarrak31 MDL Senior Member

    Feb 28, 2024
    419
    112
    10
    Friends, I am doing ltsc for version 25398.763, but when I enter the settings, it crashes and does not work. What am I doing wrong?
     
  5. Sum_Ting_Wong

    Sum_Ting_Wong MDL Member

    Jan 30, 2024
    157
    229
    10
    #14885 Sum_Ting_Wong, Mar 16, 2024
    Last edited: Mar 16, 2024
    It was GN using a server boot.wim because it looks nicer. Also the boot.wim UUPMC made failed and I had it on hand while I downloaded and created a UUPD core/pro iso. There was almost nothing left to remove that wouldn't prohibit integrity checks to be honest. I was going all out. Absolutely no pre-testing because I was feeling lucky. Scan health found no corruption after taking it offline, however it found them in the wim image. So I fixed that, cut a tiny bit more because **** it, and we'll see how it goes.
    Settings as in OOBE or post-welcome? It should be leaving logs in various places in either case. I'd do your standard scans you've been told about too many times in your life as well. Here is a simple batch I made to make that fast. Half of it is just me goofing off, if you wonder why it's so long.
    Code:
    @echo off
    title DISM Fixes
    color 0E
    
    ::
    :: REQUESTING ADMIN
    ::
    >nul 2>&1 reg query "HKU\S-1-5-19\Environment"
    if '%errorlevel%' NEQ '0' (
        (echo.Set UAC = CreateObject^("Shell.Application"^)&echo.UAC.ShellExecute "%~s0", "", "", "runas", 1)>"%tmp%\getadmin.vbs"
        "%tmp%\getadmin.vbs"
        exit /B
    ) else ( >nul 2>&1 del "%tmp%\getadmin.vbs" )
    
    
    mode con: cols=61 lines=25
    :options
    call:BANNER
    echo               +---[ OPTION MENU ]------------+
    echo               ^|                             ^|
    echo               ^|  1. CheckHealth             ^|
    echo               ^|  2. ScanHealth              ^|
    echo               ^|  3. RestoreHealth           ^|
    echo               ^|  4. AnalyzeComponentStore   ^|
    echo               ^|  5. StartComponentCleanup   ^|
    echo               ^|  6. SPSuperseded            ^|
    echo               ^|  7. ResetBase               ^|
    echo               ^|  8. RevertPendingActions*   ^|
    echo               ^|  0. Exit.                   ^|
    echo               ^|                             ^|
    echo                +------------------------------+
    echo.
    echo        # Know what you are doing.
    echo        # Type a number below and press the Enter key.
    echo.
    set DVAR=
    set /p "DVAR=>----> Enter Option: "
    cls
    echo. && echo.
    if '%DVAR%' NEQ '0' (
    goto source
    ) else ( goto exit )
    
    :source
    echo Task: %DVAR%
    choice /c:oi /N /M:">----> /[O]nline, or /[I]mage?"
    if '%errorlevel%' NEQ '1' (
    goto offline
    ) else ( goto online )
    
    
    :offline
    set str=/Image:
    set offline=
    echo.
    set /p "offline=----  Enter path to image: "
    if "%DVAR%"=="0" exit
    if "%DVAR%"=="1" set "target=%offline%" && goto dch
    if "%DVAR%"=="2" set "target=%offline%" && goto dsh
    if "%DVAR%"=="3" set "target=%offline%" && goto drh
    if "%DVAR%"=="4" set "target=%offline%" && goto dacs
    if "%DVAR%"=="5" set "target=%offline%" && goto dscc
    if "%DVAR%"=="6" set "target=%offline%" && goto dsps
    if "%DVAR%"=="7" set "target=%offline%" && goto drb
    if "%DVAR%"=="8" set "target=%offline%" && goto drpa
    
    :online
    set str=/
    if "%DVAR%"=="0" exit
    if "%DVAR%"=="1" set "target=Online" && goto dch
    if "%DVAR%"=="2" set "target=Online" && goto dsh
    if "%DVAR%"=="3" set "target=Online" && goto drh
    if "%DVAR%"=="4" set "target=Online" && goto dacs
    if "%DVAR%"=="5" set "target=Online" && goto dscc
    if "%DVAR%"=="6" set "target=Online" && goto dsps
    if "%DVAR%"=="7" set "target=Online" && goto drb
    if "%DVAR%"=="8" set "target=Online" && echo   Heh. && echo. && timeout 1 > nul && goto drpa0
    
    
    :dch
    DISM.exe %str%%target% /Cleanup-Image /CheckHealth
    echo. && echo.
    choice /C:yn /N /M:"--  Health checked: Continue? [Y]es/[N]o."
    if '%errorlevel%' NEQ '1' (
    goto exit
    ) else ( goto options )
    
    :dsh
    DISM.exe %str%%target% /Cleanup-Image /ScanHealth
    echo. && echo.
    choice /C:yn /N /M:"--  Health scanned: Continue? [Y]es/[N]o."
    if '%errorlevel%' NEQ '1' (
    goto exit
    ) else ( goto options )
    
    :drh
    DISM.exe %str%%target% /Cleanup-Image /RestoreHealth
    echo. && echo.
    choice /C:yn /N /M:"--  Health restored: Continue? [Y]es/[N]o."
    if '%errorlevel%' NEQ '1' (
    goto exit
    ) else ( goto options )
    
    :dacs
    DISM.exe %str%%target% /Cleanup-Image /AnalyzeComponentStore
    echo. && echo.
    choice /C:yn /N /M:"--  CompStore analyzed: Continue? [Y]es/[N]o."
    if '%errorlevel%' NEQ '1' (
    goto exit
    ) else ( goto options )
    
    :dscc
    DISM.exe %str%%target% /Cleanup-Image /StartComponentCleanup
    echo.  && echo.
    choice /C:yn /N /M:"--  CompStore cleaned: Continue? [Y]es/[N]o."
    if '%errorlevel%' NEQ '1' (
    goto exit
    ) else ( goto options )
    
    :dsps
    echo. && echo.
    choice /C:yn /N /M:"--  Hide them from update list, too?: [Y]es/[N]o."
    if "%errorlevel%"=="2" set "sps=/SPSuperseded"
    if "%errorlevel%"=="1" set "sps=/SPSuperseded /HideSP"
    if "%sps%"=="/SPSuperseded" set "hidn=:"
    if "%sps%"=="/SPSuperseded /HideSP" set "hidn= and hidden:"
    echo.
    DISM.exe %str%%target% /Cleanup-Image %sps%
    echo. && echo.
    choice /C:yn /N /M:"--  SvcPaks cleaned%hidn% Continue? [Y]es/[N]o."
    echo.
    if '%errorlevel%' NEQ '1' (
    goto exit
    ) else ( goto options )
    
    :drb
    DISM.exe %str%%target% /Cleanup-Image /StartComponentCleanup /ResetBase
    echo. && echo.
    choice /C:yn /N /M:"--  Base reset: Continue? [Y]es/[N]o."
    if '%errorlevel%' NEQ '1' (
    goto exit
    ) else ( goto options )
    
    
    ::########################
    ::##                    ##
    ::##   the fun* stuff   ##
    ::##                    ##
    ::########################
    
    :drpa0
    echo
    echo.
    echo --  This function is intended for emergency use on an offline
    echo --  image that wont boot after you have performed an update,
    echo --  repair, or other activity involving official servicing.
    timeout 2 /nobreak > nul
    color 0F
    echo.
    echo            ***** USER DISCRETION IS ADVISED! *****
    echo.
    timeout 4 /nobreak > nul
    color 0E
    echo.
    choice /C:ow /N /M:" ...Will you be proceeding?: [O]h yeah!/[W]hat?"
    echo. && echo. && echo --  Remember...
    echo --    you asked for this...
    echo.
    timeout 3 /nobreak
    echo DISM.exe %str%%target% /Cleanup-Image /RevertPendingActions
    timeout 2 /nobreak > nul
    echo. && echo. && echo.
    set "lines=echo. && echo."
    set "cnt=echo COUNTDOWN"
     > %tmp%\Rest1.vbs echo Wscript.sleep 1000 && SET R1=Start /w %tmp%\Rest1.vbs
    cls
    %lines% && echo "[                            0.0%                          ]"
    %cnt% 5 >> %tmp%\count.txt &&  %R1% && cls
    %lines% && echo "[                            0.0%                          ]"
    echo "[                            0.0%                          ]"
    %cnt% 4 >> %tmp%\count.txt &&  %R1% && cls
    %lines% && echo "[                            0.0%                          ]"
    echo "[                            0.0%    
    echo "[===========                20.0%                          ]"
    %cnt% 3 >> %tmp%\count.txt &&  %R1% && cls
    %lines% && echo "[                            0.0%                          ]"
    echo "[                            0.0%    
    echo "[===========                20.0%                          ]"
    echo "[=======-==-                2).0%                          ]"
    %cnt% 2 >> %tmp%\count.txt &&  %R1% && color 06 && cls
    %lines% && echo "[                            0.0%                          ]"
    echo "[                            0.0%    
    echo "[===========                20.0%                          ]"
    echo "[=======-==-                2).0%                          ]"
    echo "[ ==-===- =- -               NaN%                          }"
    %cnt% 1 >> %tmp%\count.txt &&  %R1% &&  color 04 &&cls
    del %tmp%\Rest1.vbs > nul && DEL %tmp%\count.txt > nul
    echo.
    echo
    echo err='0x00003d07' name='ERROR_SYSTEM_NEEDS_REMEDIATION'
    echo.
    echo.
    echo      ~~~~~~~~~~~~~~             --                       --
    echo     ~~ ERROR CODE ~~                 System32 deleted.
    echo     ~~ 0x00003d07 ~~                 #Files not found.
    echo      ~~~~~~~~~~~~~~             --                       --
    echo. && echo. && echo.
    echo Press any key to restart . . .
    timeout 5 > nul
    echo. && echo.
    color 0C && echo --  Oh wait... && timeout 2 /nobreak > nul
    color 0E && echo --  Nevermind. && timeout 2 /nobreak > nul
    goto derp
    
    :drpa
    echo
    echo.
    echo --  This function is intended for emergency use on an offline
    echo --  image that wont boot after you have performed an update,
    echo --  repair, or other activity involving official servicing.
    timeout 2 /nobreak > nul
    color 0F
    echo.
    echo            ***** USER DISCRETION IS ADVISED! *****
    echo.
    if '%target%' EQU 'Online' (
    pause && color 0E && goto derp
    ) else ( timeout 3 /nobreak > nul )
    color 0E
    echo.
    choice /C:ow /N /M:" ...Will you be proceeding?: [O]h yeah!/[W]hat?"
    if '%errorlevel%' NEQ '1' (
    goto derp
    ) else ( goto rpa )
    
    :derp
    echo. && echo --  Look it up. Or else! && echo. && echo. && timeout 4
    goto options
    
    :rpa
    echo.
    echo --  Remember, you asked for this...
    echo.
    timeout 5 /nobreak
    echo.
    DISM.exe %str%%target% /Cleanup-Image /RevertPendingActions
    echo. && echo.
    choice /C:yn /N /M:"--  The deed is done: Continue? [Y]es/[N]o."
    if '%errorlevel%' NEQ '1' (
    goto exit
    ) else ( goto options )
    
    ::########################
    ::##                    ##
    ::##   end fun* stuff   ##
    ::##                    ##
    ::########################
    
    
    :exit
    title Godspeed!
    set "lines=echo. && echo."
    set "cnt=echo COUNTDOWN"
     > %tmp%\Rest1.vbs echo Wscript.sleep 1000 && SET R1=Start /w %tmp%\Rest1.vbs
    cls
    %lines% && echo ">---> Closing in ...3" && %cnt% 3 >> %tmp%\count.txt &&  %R1% && cls
    %lines% && echo ">---> Closing in ....2" && %cnt% 2 >> %tmp%\count.txt &&  %R1% && color 06 && cls
    %lines% && echo ">---> Closing in .....1" && %cnt% 1 >> %tmp%\count.txt &&  %R1% && cls
    del %tmp%\Rest1.vbs > nul && DEL %tmp%\count.txt > nul && exit
    
    
    :BANNER
    cls                                  
    echo                        ______________
    echo                 /     / DISM Service        \__
    echo                 \\     Tasks Made Easy      /  \
    echo                  \\_____________________\__/
    echo.&echo.
    goto:eof
    I hope that preserved my bell key.
     
  6. xinso

    xinso MDL Guru

    Mar 5, 2009
    13,677
    14,414
    340
  7. zwl29107

    zwl29107 MDL Addicted

    Jul 10, 2022
    600
    700
    30
    WIF=Windows Insider Fast=Dev
     
  8. zwl29107

    zwl29107 MDL Addicted

    Jul 10, 2022
    600
    700
    30
    22000 x86 is only downloadable through MS internal UUP and has been taken down in 2023.
     
  9. Sum_Ting_Wong

    Sum_Ting_Wong MDL Member

    Jan 30, 2024
    157
    229
    10
  10. xinso

    xinso MDL Guru

    Mar 5, 2009
    13,677
    14,414
    340
  11. ohault

    ohault MDL Member

    Dec 27, 2022
    192
    52
    10
    #14893 ohault, Mar 17, 2024
    Last edited: Mar 17, 2024
    So far, based on what we learned with building a "Windows 10 Starter" edition, could this knowledge be useful to build others existing but unreleased editions ?

    e.g.
    Code:
    NanoServer = 0x0000006D,
    DatacenterNanoServer = 0x0000008F,
    StandardNanoServer = 0x00000090,
    DatacenterAServerCore = 0x00000091,
    StandardAServerCore = 0x00000092,
    DatacenterWSServerCore = 0x00000093,
    StandardWSServerCore = 0x00000094,
    AzureNanoServer = 0x000000A9,
    AzureServerCore = 0x000000A8,
    
    I can think of "Nano Server install option" (NanoServer.wim) for Windows Server 2019, 2022, .....
    A first step would be to recreate the Windows Server 2016 NanoServer.wim
     
  12. xinso

    xinso MDL Guru

    Mar 5, 2009
    13,677
    14,414
    340
    #14895 xinso, Mar 17, 2024
    Last edited: Mar 17, 2024
    It is "You" only when I quoted your post. Otherwise it is "me" talking to myself.
     
  13. zwl29107

    zwl29107 MDL Addicted

    Jul 10, 2022
    600
    700
    30
    Any SKU without license files (.xrm-ms) cannot be created. At most, you can make dism display the edition, but it cannot be activated and lacks edition specific policies.
     
  14. ohault

    ohault MDL Member

    Dec 27, 2022
    192
    52
    10
    Does this mean that these artefacts has been recreated/discovered for "Windows 10 Starter" ?
     
  15. xinso

    xinso MDL Guru

    Mar 5, 2009
    13,677
    14,414
    340
  16. Ace2

    Ace2 MDL Expert

    Oct 10, 2014
    1,857
    1,520
    60
    i don't know what to tell you, because the method works fine on my end, black screen can be a display driver problem.