pp03 said that the latest 19045.6029 CU brings MicrosoftBing, unable to remove. Widgets is working now. Q: When 19045 AC reached End of Sevice?
Thank you, @xinso! I tried it, and it worked! Windows10.0-KB5003791-x64-19044-21H2-as-19045-22H2.cab can replace Windows10.0-KB5015684-x64.cab. What about the base .NET KB5011048 that must always be included in offline updates? When starting the update from 19041.1, can it be applied at the same time so that it doesn't need to be included in the next update with the 19041.1 base?
Code: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: TARGET=CoreCountrySpecific :: TARGET=Core, CoreSingleLanguage :: TARGET=EnterpriseG :: TARGET=EnterpriseS, IoTEnterpriseS :: TARGET=Professional, Education, Enterprise, IoTEnterprise, ProfessionalWorkstation, ServerRdsh :: TARGET=CoreN :: TARGET=EnterpriseSN :: TARGET=ProfessionalN, EducationN, EnterpriseN, ProfessionalWorkstationN :: LANG=ar-SA, bg-BG, cs-CZ, da-DK, de-DE, el-GR, en-GB, en-US, es-ES, es-MX, et-EE, fi-FI, fr-CA, fr-FR, he-IL, hr-HR, hu-HU, it-IT, ja-JP :: LANG=ko-KR, lt-LT, lv-LV, nb-NO, nl-NL, pl-PL, pt-BR, pt-PT, ro-RO, ru-RU, sk-SK, sl-SI, sr-LATN-RS, sv-SE, th-TH, tr-TR, uk-UA, zh-CN, zh-TW :: CHANNEL=OEM, VOL :: STORE=with, without :: NETFX=48, 481 :: RESETBASE=Yes, No ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: set TARGET=IoTEnterprise set LANG=-en-GB set CHANNEL=OEM set STORE=with set NETFX=481 set RESETBASE=No ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: set KMSName=*********** ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: if exist temp ( echo. echo ------------------------------------------------------------ echo Delete temporary folder echo ------------------------------------------------------------ rd /s /q temp ) else ( md temp %_NUL% ) set "_NUL=>NUL 2>&1" set "_TXT=temp\1.txt" set "_TMP=temp\1" md temp\mount %_NUL% set "MT=temp\mount" md temp\mount1 %_NUL% set "MT1=temp\mount1" set S=files\update\ssu set E=files\update\enablement set L=files\update\lcu set SR=files\update\systemreset set N48=files\update\ndp48 set N481=files\update\ndp481 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: Code: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: if exist temp\info.txt (del /f /q temp\info.txt) files\wimlib-imagex info files\Unstage.wim 1 >temp\info.txt 2>&1 for /f "tokens=2 delims=: " %%i in ('findstr /i /c:"Flags:" temp\info.txt') do (set SOURCE=%%i) for /f "tokens=2 delims=: " %%i in ('findstr /i "Architecture:" temp\info.txt') do (set ARCHITECTURE=%%i) if %ARCHITECTURE% equ x86 (set ARCH=x86&set UARC=x86) if %ARCHITECTURE% equ x86_64 (set ARCH=amd64&set UARC=x64) if %ARCHITECTURE% equ ARM64 (set ARCH=arm64&set UARC=arm64) for /f "tokens=3 delims=: " %%i in ('findstr /i "Major" temp\info.txt') do (set V1=%%i) for /f "tokens=3 delims=: " %%i in ('findstr /i "Minor" temp\info.txt') do (set V2=%%i) for /f "tokens=2 delims=: " %%i in ('findstr /b "Build" temp\info.txt') do (set V3=%%i) for /f "tokens=4 delims=: " %%i in ('findstr /i /c:"Service Pack Build:" temp\info.txt') do (set V4=%%i) set LVER=%V1%.%V2%.%V3%.%V4% set SVER=%V3%.%V4% ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: if exist %S%\*%UARC%* if exist %L%\*%UARC%*.cab ( echo. echo ------------------------------------------------------------ echo Expand Cumulative update echo ------------------------------------------------------------ dir /b %L%\*.cab >%_TXT% powershell -Command "(gc %_TXT%) -replace '.cab', '' | sc %_TXT%" if not exist temp\LCU md temp\LCU for /f %%i in ('findstr /i . %_TXT%') do ( %WinDir%\System32\expand -R "%L%\%%i.cab" -F:* "temp\LCU" %_NUL% if exist "temp\LCU\*.cab" %WinDir%\System32\expand -R "temp\LCU\*.cab" -F:* "temp\LCU" %_NUL% ) set LCU=temp\LCU for /f "tokens=7 delims=_." %%i in ('dir /b temp\LCU\%ARCH%_microsoft-windows-coreos-revision*.manifest') do (set V4=%%i) ) if exist %S%\*%UARC%* if exist %L%\*%UARC%*.esd ( echo. echo ------------------------------------------------------------ echo Expand Cumulative update echo ------------------------------------------------------------ echo. dir /b %L%\. >temp\1.txt powershell -Command "(gc temp\1.txt) -replace '.esd', '' | sc temp\1.txt" for /f %%i in ('findstr /i . temp\1.txt') do ( files\wimlib-imagex extract %L%\%%i.esd 1 \ --dest-dir=temp\LCU --no-acls --no-attributes ) set LCU=temp\LCU for /f "tokens=7 delims=_." %%i in ('dir /b temp\LCU\%ARCH%_microsoft-windows-coreos-revision*.manifest') do (set V4=%%i) ) ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: if exist files\update\enablement\*KB5003791* (set V3=19044&set EAM=21H2) if exist files\update\enablement\*KB5015684* (set V3=19045&set EAM=22H2) ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: [Files\NetFx481] Code: x64.cab x64-ar-sa.cab x64-cs-cz.cab x64-da-dk.cab x64-de-de.cab x64-el-gr.cab x64-es-es.cab x64-fi-fi.cab x64-fr-fr.cab x64-he-il.cab x64-hu-hu.cab x64-it-it.cab x64-ja-jp.cab x64-ko-kr.cab x64-nb-no.cab x64-nl-nl.cab x64-pl-pl.cab x64-pt-br.cab x64-ru-ru.cab x64-sv-se.cab x64-tr-tr.cab x64-zh-cn.cab x64-zh-tw.cab Code: ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: if defined LCU ( echo. echo ------------------------------------------------------------ echo Add Servicing Stack update to %TARGET% image echo ------------------------------------------------------------ dism /english /image:%MT% /add-package:%S% if exist %E%\*%UARC%* ( echo. echo ------------------------------------------------------------ echo Add %EAM%Enablement to %TARGET% image echo ------------------------------------------------------------ dism /english /image:%MT% /add-package:%E% ) if %NETFX%==48 if exist %N48%\*%UARC%* ( echo. echo ------------------------------------------------------------ echo Add DotNetRollup 4.8 to %TARGET% image echo ------------------------------------------------------------ dism /english /image:%MT% /add-package:%N48% ) if %NETFX%==481 if exist %N481%\*%UARC%* ( echo. echo ------------------------------------------------------------ echo Add .Net Framework 4.8.1 to %TARGET% image echo ------------------------------------------------------------ dir /b files\NetFx481\%UARC%.cab >%_TXT% powershell -Command "(gc %_TXT%) -replace '.cab', '' | sc %_TXT%" if not exist %_TMP% (md %_TMP%) for /f %%i in ('findstr /i . %_TXT%') do ( %WinDir%\System32\expand -R "files\NetFx481\%%i.cab" -F:* "%_TMP%" %_NUL% if exist "%_TMP%\*.cab" %WinDir%\System32\expand -R "%_TMP%\*.cab" -F:* "%_TMP%" %_NUL% ) if exist "%_TMP%\*.cab" del /f /q "%_TMP%\*.cab" if /i %ARCH%==arm64 ( for /f %%i in ('dir /b %_TMP%\*.mum') do (powershell -Command "(gc %_TMP%\%%i) -replace '"10.0.22000.1"', '"10.0.%SVER%"' | sc %_TMP%\%%i") for /f %%i in ('dir /b %_TMP%\*.mum') do (powershell -Command "(gc %_TMP%\%%i) -replace '"10.0.22000.652"', '"6.0.0.0"' | sc %_TMP%\%%i") ) dism /english /image:%MT% /add-package:%_TMP% rd /s /q %_TMP% if exist files\NetFx481\%UARC%-%LANG%.cab ( echo. echo ------------------------------------------------------------ echo Add %LANG% .Net Framework 4.8.1 language to %TARGET% image echo ------------------------------------------------------------ dir /b files\NetFx481\%UARC%-%LANG%.cab >%_TXT% powershell -Command "(gc %_TXT%) -replace '.cab', '' | sc %_TXT%" if not exist %_TMP% (md %_TMP%) for /f %%i in ('findstr /i . %_TXT%') do ( %WinDir%\System32\expand -R "files\NetFx481\%%i.cab" -F:* "%_TMP%" %_NUL% if exist "%_TMP%\*.cab" %WinDir%\System32\expand -R "%_TMP%\*.cab" -F:* "%_TMP%" %_NUL% ) if exist "%_TMP%\*.cab" del /f /q "%_TMP%\*.cab" if /i %ARCH%==arm64 ( for /f %%i in ('dir /b %_TMP%\*.mum') do (powershell -Command "(gc %_TMP%\%%i) -replace '"10.0.22000.1"', '"10.0.%SVER%"' | sc %_TMP%\%%i") for /f %%i in ('dir /b %_TMP%\*.mum') do (powershell -Command "(gc %_TMP%\%%i) -replace '"10.0.22000.652"', '"6.0.0.0"' | sc %_TMP%\%%i") ) dism /english /image:%MT% /add-package:%_TMP% rd /s /q %_TMP% ) if exist %MT%\Windows\servicing\Packages\Package_for_KB5011048*%ARCH%*.mum ( echo. echo ------------------------------------------------------------ echo Add DotNetRollup 4.8.1 to %TARGET% image echo ------------------------------------------------------------ dism /english /image:%MT% /add-package:%N481% ) ) echo. echo ------------------------------------------------------------ echo Add Cumulative update to %TARGET% image echo ------------------------------------------------------------ dism /english /image:%MT% /add-package:%LCU% if /i %RESETBASE%==Yes ( echo. echo ------------------------------------------------------------ echo Reset %TARGET% base echo ------------------------------------------------------------ dism /english /image:%MT% /cleanup-image /startcomponentcleanup /resetbase ) ) :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: You can integrate these things to 19041.1 as base image: 1. Add Enablement 2. Add .Net35\48\481 3. If .Net481, add .NetRollup481 (optional becasue it will be potentially updated.) As you mentioned yesterday, I rearranged my script. All is standalone. .NET48, standalone. .NET481 and Language pack if available, standalone. .NET481Rollup, standalone. WinRE, standalone. CU, standalone. Enablement, standalone. More flexible. And more clear like a hair cut. Anyway, just comfortable. Thank you.
Q: Is it possible to migrate components between Client and Server? A: Hardly. Because the component deployment in manifset is different between Client and Server. Q: How to migrate ServerBackup from Server to Client? ServerBackup is controlled by Product policy. For Client, only ServerRdsh is possible. The problem is ServerBackup, unlike Dedup, is composed of lots of functions. Very difficult to migrate, let alone custom updates. Q: How to use it easily? A: Use Server Desktop Experience as ServerRdsh workstation.
Usually, CMGE EnterpriseG goes with LTSC. Official 26100 LTSC has been for a while. Q: Will there be 26100 CMGE EnterpriseG?
With 20279 full Store, there are four Apps won't work on 20348.1 Client and Server. i.e. Xbox, Phone Link, Clock, Photos. 26100 Store on 20348.3807 Server Desktop Experience? They work.
I seached the web for Microsoft Teams. People ask: How to install it for all Users? On 19045, News and Interests (Widgets) works for AC only. I ask: How to run it on 19044 LTSC when AC reached end of service?
windows 11 23H2 build 25398 is better ? cos the unstaging ? or its the build many saying its better then other what u guys thinks