1. Jingzin

    Jingzin MDL Addicted

    Nov 10, 2021
    666
    533
    30
    @inTerActionVRI,

    I think theres an error in reg file disable/enable Windows update.

    SetDisableUXWUAccess should be 0 in enable windows store downloads, then windows update will work again. If you leave 1. Check for updates is greyed out.
     
  2. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    #21942 inTerActionVRI, Dec 29, 2021
    Last edited: Dec 29, 2021
    Set in 1, disables checking for updates in Windows Update.
    This is doing what should be done in "Custom Disable Windows Update (The purpose is to keep Windows Update disabled, but keep the Store with there downloads in operation)".


    For Windows Store these are the Tweaks:
    Code:
    reg.exe add "HKLM\TK_SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsStore\WindowsUpdate" /v "AutoDownload" /t REG_DWORD /d "5" /f >nul 2>&1
    reg.exe add "HKLM\TK_SOFTWARE\Policies\Microsoft\WindowsStore" /v "AutoDownload" /t REG_DWORD /d "5" /f >nul 2>&1
    
     
  3. katinatez

    katinatez MDL Novice

    Sep 14, 2013
    2
    0
    0
    Hello everyone, just read the last 30 pages of thread. My question is does any one have a packagelist removal for w11 10.22000.318? And a components package list for removal? And last question is do I need any particular package to keep to install apps using winstall over cmd? Thanks for reply
     
  4. #21945 Deleted member 1385001, Dec 29, 2021
    Last edited by a moderator: Dec 30, 2021
    Code:
    Dism /online /get-packages /format:table >> %userprofile%/desktop/packages.txt
    or

    Code:
    Tree C:/Windows/servicing/packages /F /A >> %userprofile%\Desktop\Packagestree.txt
    Post results & will let you know which packages are good to remove to be in a good privacy environment.
     
  5. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    #21946 inTerActionVRI, Dec 30, 2021
    Last edited: Dec 30, 2021

    Attached Files:

  6. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    #21947 inTerActionVRI, Dec 30, 2021
    Last edited: Feb 20, 2022
    https://forums.mydigitallife.net/threads/msmg-toolkit.50572/page-793#post-1606110

    Sent an 2021-12-29 New CustomToolkit and CustomToolkit_Beta updated file attached in the link above and in my signature.

    Fixed a problem with Remove System Apps Menu "The component removal seems to have a problem regarding the "Windows Mixed Reality" component. It keeps getting reactivated no matter what.", thnks to @Teo265.

    Fixed a problem by using the option to save your custom selection in a file list, thnks to @Teo265.

    Custom Toolkit Beta has made available to test.
    I just deployed the multiple choice schema for the Integrate Windows Updates menu.
    I will make available as beta (for testing).

    Now you can set everything from "Language Packs" up to "Custom Features" and run the "Start Integration" only once so that what is selected, be integrated.

    Download at Custom Toolkit's main post link.

    Note: Extract within the toolkit folder, the "GenericStart_LauncherMenu.cmd" will recognize the file "CustomToolkit_Beta.cmd".
    In "GenericStart_LauncherMenu.cmd" use option 4 for tests.

    This time I was able to do the implementation only with menu modifications, and in the Start Integration function, so I avoid modifications in the structure of the code that integrates the updates. This will facilitate the merge with the future changes made by @MSMG.

    New Custom Toolkit bug found, thnks to @Intmd for the issue repport.
    I gave a visual check in the code and I found the bug that explains what he was telling me.

    For now just replaces from:
    Code:
    if "%IsBootImageSelected%" equ "Yes" set "Feature=%%i"
    
    to
    Code:
    if "%IsBootImageSelected%" equ "Yes" set "Features=!Features!;%%i"
    
    Note: Yes, it is from "Feature" to "Features".


    Bug: Only occurred when the "Integrate Setup Media Update" was selected. This blocked the integration of everything that had already been selected in the other menus. This is corrected by replacing this line.

    This way you can integrate 1 Language Packs, 2 Drivers and 3 features (If you want to activate the bypass for pauses and questions just press "0" before proceeding with "Start Integration". After the procedure you can press "0" inside the Integration Menu to disable.), in one step. Then do the manual steps on 4 Windows Update; And as the last step, do the 4 Setup Media Updates and 5 Custom Features after this, if necessary and proceeding with "Start Integration".


    Happy Holidays!

    Fixed a typo error in a Tweak where quotes are missing.
    Conflict fixed between Windows 10 "TaskBarsize" and Windows 11 "TaskBarsi" Tweaks.

    I removed another tweaks related to a provisional fix (IrisService) that had any relation to an old taskbar bug.

    *Merged with 2021-11-26 11.10 and 2021-12-03 12.0 Toolkit.cmd.

    1. Fixed Display Host OS info for Windows 7, 8, 8.1, and 11. Thnks to the error in displaying Windows 7 Host OS, reported by the @正义羊 member.

    2. For InboxApps:
    Fixed problem in detecting the .xml files
    Fixed merge problem from the previous version (CustomToolkit only) in which, the variables for the .xml files for some InboxApps components was with TYPO and the path to the AppLicence folder was not achieved.

    3. Fixed a problem in the fully automated CustomToolkit process, in which, when performing the removal of components via ToolkitHelper List, it would end up returning to Remove Components Menu instead of following to Customize Menu and Apply Menu processes to complete and saving the ISO.

    4. Inserted a Packs folder with individual scripts for auto download of *.msu files and auto extract *.cab needed files.
    Just extract and replace if necessary inside the toolkit folder, nothing important will be replaced, only the txt with the links, as some were empty.

    5. Shortened CustomToolkit paths, as the purpose of reducing long path problems.
    from
    %SystemDRIVE%\Toolkit
    to
    %SystemDRIVE%\TK

    from
    %SystemDRIVE%\Toolkit\Mount
    to
    %SystemDRIVE%\TK\MNT

    from
    %Mount%\Install
    to
    %Mount%\I

    from
    %SystemDRIVE%\Toolkit\Temp
    to
    %SystemDRIVE%\TK\TMP

    With this change, the mount point that was long:
    C:\Toolkit\Mount\Install\*
    Now it was shortened to:
    C:\TK\MNT\I\*
    The asterisk is the number of mounted index.

    *Merged with 2021-11-11 11.9 Toolkit.cmd.
    Added the option to integrate SysInternals Suite. Every time you do integration will automatically download the latest version. The download process is performed through the BITS, datetime stamp will be maintained according to what is present in the file on the remote server. SysInternasl Suite is updated by MS, quizenally, and sometimes weekly.

    Just Minor Fixes related with Display Host OS info.

    *Merged with 2021-10-22 and 2021-10-24 11.8 Toolkit.cmd.
    Just Minor Typo Fixes.

    *Merged with 2021-10-04, 2021-10-08, 2021-10-14 and 2021-10-16 11.8 Toolkit.cmd.

    1. Minor Fix caused by the implementation of the fully automated process that could give a conflict when using the Source menu.
    2. Removed the integration of InboxApps from the fully automated process. Thus, more generically, I think it is best for the production of a fully functional image.
    3. Added fixed "Bin\ConvertReg.ps1", "ToolkitREGsConverter.bat" and "ToolkitREGsDoubleConverter.bat" files.

    4. VirtualCreate_ImageIndexEditions.zip (2021-10-26 updated and merged with @abbodi1406 "uup-converter-wmlib-74b")

    Fixed missing parentesis "(" breaking the script.

    *Merged with 2021-10-03 Toolkit.cmd.

    *Fixed ManualSetup by MSMG suggestion;
    *:SaveSource session - WinRE minor fix
    *The names of the custom ISOs were getting the name of UUP Dump ISO. In this case, then the Auto Name was directed to the custom ISOs. It is a function that was already available at the Custom Toolkit at the ":Makeiso" session.
    *Automated Removal Components process changed from "PreSet Custom Selection" to "ToolkitHelper List".
    Note: In this method the dependency filter will be applied. So, according to Build, there will be differences.

    Merged made with the Official Toolkit 11.8 from 2021-09-19 to 2021-09-29.

    1. Since my code writing method with the idea of reducing lines was making complicated the merge tasks. As the code was drowned in complications, difficult to readability for other devs. I decided to twist my code, in the sense of wiping. Expanded parts of the code that were in just one line for multiple lines in order to improve the reading of it. Mainly in the "for (loop) command thanks to a tip learned in the @abbodi1406 scripts.
    And, of course learning every day with @MSMG. In addition to the solutions brought in the Toolkit script, he always answers some people asks that brings new doubts and new learning.

    2. In Inbox Apps:
    2.1. A detail was modified to indicate what is not present in the packs, before continuing with inboxapps integration.
    2.2. Fixed - A problem created by custom toolkit modifications by implementing the multi-selection system of inboxapps that repeated the final optimization that should be once for each index, but was repeating by the amount of apps selected times the quantity of indexes. As much as the whole process was automatic, this caused a very accentuated delay.

    3. Added - Condition for integration of Sun Valley Icons Skin Pack only for Builds below 21348.

    4. Some minor code upgrade on Tweaks and...
    4.1. Added - Simple Bypass Hardware Requisites Checking for InPlace Upgrade.

    5. WMP Skin for x64 now apply in WMP Program Files(x86) folder too.

    6. Adicionada uma opção de Custom PreSet para "Windows 7 Components Experience Edition" baseada na lista de componentes a serem mantido que o MSMG disponibilizou.

    7. Fixed Edge Chromium Integration for w81.

    OBS: Supplementary information for Devs: After the implementation of Windows 11 support I found some bugs related to the use of subsequent conditions of "not equal" associated with the use of "else" in the same block (NEQ NEQ ELSE). It does not work.
    Ex: The use (neq w10 neq w11) so that a block block could work for both W7 and W81 and an "else" for when w10 or w11, but this does not work:

    In this case, what comes in the else block is completely ignored not being executed. I suppose a conflict occurs.
    Code:
           if "%SelectedSourceOS%" neq "w10" if "%SelectedSourceOS%" neq "w11" (
               echo.Performing Tasks for w7 or w81...
           ) else (
               echo.Performing Tasks for w10 or w11...
           )
           
    To correct this, the possible way is just as below.
    Code:
           if "%SelectedSourceOS%" neq "w10" if "%SelectedSourceOS%" neq "w11" (
               echo.Performing Tasks for w7 or w81...
           )
           if "%SelectedSourceOS%" neq "w7" if "%SelectedSourceOS%" neq "w81" (
               echo.Performing Tasks for w10 or w11...
           )
           
    8.
    Guys, I left something at Custom Toolkit, which is to facilitate my tests, but it may be interesting to you too.

    Basically it is:
    In the main menu, press the letter "P" and watch the process.
    This will lead you to the selection of an ISO that will be extracted then beginning the atomatized process.
    Have your packs updated and with the folder structure updated for Toolkit 11.8 (recently changes made by MSMG).
    The custom registry folder also has to be duplicated w10 and w11 folders. I put a bypass for that. Instead of having 2 equal folders, leave only one with the name w10_w11. For Inbox Apps it is also possible but probably the licenses should have their folders separated for W81, W10 and W11. @MSMG, joining the folders will release plenty of space in mega.nz. Files hashsum are equal, for both w10 and w11.
    If you notice any error or jump integration, in the process execution, it is due to some missing pack.

    If you do not want to integrate something, just change the folder name so that the script can not find the pack. Example: If you do not want to integrate Games change the name of the folder from: ".\Packs\Games" to: ".\Packs\Games_".

    Automation goes up to, Virtual Create Image Index Editions and ISO finalization.
    Download "VirtualCreate_ImageIndexEditions.zip" that is in my signature to the folder where the "toolkit.cmd" file is.
    Below is the list of packs that will be integrated:
    Removes Components by Preset Custom Selection.

    So that you can take the test.
    Download "virtualcreate_imageindexeditions.zip" that is in my signature to the folder where the "toolkit.cmd" file is.
    Below the list of packs that will be integrated, the Tweaks that will be applied and the components that will be removed by the Preset Custom Selection.

    So that you can take the test.

    Code:
    :: Auto Integrate Menu
       IntWin32Calc
       IntNetFX48 17763
       IntNET6 above 17763
       IntOpenSSH
       IntPowerShell7
    
       IntGames
           CariocaRummy
           HoldEm
           Sudoku
           Tinker
           ChessTitans
           FreeCell
           Hearts
           Inkball
           MahjongTitans
           Minesweeper
           Pinball
           PurblePlace
           Solitaire
           SpiderSolitaire
    
       IntDaRT
    
       IntCustomFeatures
           IntCustomFiles
           IntWMPMetroSkin
           IntWPVMetroSkin
           IntWin32CalcMetroSkin
           IntWIconsSkin
    

    At this point the removal of the components will be by ToolkitHelper list. Leave your favorite list.
    In this method the dependency filter will be applied. So, according to Build, there will be differences.
    Code:
    :: Auto Remove Menu
    set "RemovalMethod=ToolkitHelper"
    call :RemoveWindowsComponentsList
    
    rem call :CustomPreSets_RemoveWindowsComponents
       rem call :AccessibilityCustomSelection
       rem call :ConservativeGenericEditionCustomSelection
       rem call :LooksLikeLTSCEditionCustomSelection
       rem call :GamerEditionCustomSelection
       rem call :LiteEditionCustomSelection
       rem call :XtremeLiteEditionCustomSelection
       rem call :W7ExperienceEditionCustomSelection
    
    Here is my Personal PreSets
    rem call :PersonalPreSets_RemoveWindowsComponents
       rem call :PersonalFamilyCustomSelection
       rem call :PersonalWorkCustomSelection
           rem call :ListsandPreSets_Filter
           rem call :StartRemovingWindowsComponents
    
    :: Auto Customize Menu
    RemoveInboxAppsAssociation
    ImportInboxAppsAssociation
    ImportStartMenuLayout
    
    ImportCustomRegistry
    
    "w8"
       CustomDisableAutomaticallyInstallationforPreSuggested3RDPartyApps
       DisableWindowsSmartScreen
       CustomWindowsDefender_WindowsDefenderSecurityCenterTweaks
       EnableCustomWindowsDriversUpdateTweaks
       CustomDisableWindowsUpdateTweaks
       DisableWindowsUpgrade
       ForceLatestNetFramework
       EnablePhotoViewer
       EnableFMP3ProCodec
       BlockAutoEdgeChromiumBasedDelivery
    
    "w10_w11"
       HiberbootEnabled
       EnableDarkThemeandTransparency
       ControlPanelnConfigsandSettingsforFastestWindows
       WindowsExplorer_PreferencesandPolicies
       HideMeetNowIcon
       HideNewsAndInterests
       SetQoSlimittozero_internetWithNoLimits
       BugFix_WiFinoInternetConnection
       SetLanmanWorkstationandDownloads_OptimizationConfigs
       CustomDisableAutomaticallyInstallationforPreSuggested3RDPartyApps
       SetCloudContentfor3RDPartyAppsandDataCollection_Policies
       SetWindowsSearchandCortana_PreferencesandPolicies
       DisableSIA_DebugTracing
       CustomWindowsErrorReporting_Policies
       DisableWindowsSmartScreen
       CustomWindowsDefender_WindowsDefenderSecurityCenterTweaks
       EnableCustomWindowsDriversUpdateTweaks
       CustomDisableWindowsUpdateTweaks
       DisableWindowsUpgrade
       DisableReservedStorage
       ForceLatestNetFramework
       EnablePhotoViewer
       EnableFMP3ProCodec
       EnableFullResetBase
       GeneralTweaks
    "w10"
       BlockAutoEdgeChromiumBasedDelivery
    "w11"
       BypassReq
       HideChatIcon
       HideWidgetsIcon
       TaskbarAlignment_Center2Left
       UnBlockAutoEdgeChromiumBasedDelivery
    
    :: Auto Apply Menu
    Cleaning up Image folder
    Trim unwanted Editions
    
    VirtualCreate_ImageIndexEditions
    Edition to be Virtualy Created if supported.
       ProfessionalWorkstation
       ProfessionalWorkstationN
       ProfessionalEducationN
       ProfessionalEducation
       Enterprise
       EnterpriseN
       ServerRdsh
       EducationN
       Education
       IoTEnterprise
       CloudEdition
       CloudEditionN
       CoreSingleLanguage
    

    Any issues, let me know.

    9. VirtualCreate_ImageIndexEditions.zip (2021-09-20 updated with @abbodi1406 "uup-converter-wimlib-72u")


    Thnks!


    May this new year reserve us more good news than we had in these difficult times.
    Happy new Year!

    See you next year!
     
  7. mikrdyd

    mikrdyd MDL Novice

    Dec 30, 2021
    1
    0
    0
    #21948 mikrdyd, Dec 30, 2021
    Last edited: Dec 30, 2021
    where do i find the reported issues?
    - snip & sketch doesn't work
    - show hidden files / extensions doesn't work
     
  8. You are Experted Hero | Happy New Year Sir |
     
  9. Jingzin

    Jingzin MDL Addicted

    Nov 10, 2021
    666
    533
    30
    @inTerActionVRI

    MixedRealityOpenXRSvc is needed for microsoft Spatial Sound i have removed it at first but now left it alone.
    hi,

    Those files i got from links provided here dont remember exactly what one.

    can i just replace those dll files in system32 or i have to do everything through toolkit ?
     
  10. rulman

    rulman MDL Member

    Jan 25, 2012
    103
    22
    10
    #21951 rulman, Dec 31, 2021
    Last edited: Jan 2, 2022
    @MSMG
    ===============================================================================
    MSMG ToolKit - Integrate Windows 10 Upgrade Preparation Updates
    ===============================================================================

    Windows 10 Upgrade Preparation Updates Folder
    <WHD\w81\x64\Extra\WithoutKB3125574\_Windows10> is empty...

    Please copy Windows 10 Upgrade Preparation Updates files to Respective Folder..

    ===============================================================================

    Press any key to continue . . .

    Toolkit_v12.0\WHD\w81\x64\Additional\Windows10

    Could the folder names be wrong?

    Toolkit_v12.0\WHD\w81\x64\Extra\
    MediaFeaturePack
    RSAT
    There are only these two folders!
     
  11. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    You need to implement through Integrate Custom Features.
    ResourceHacker will merge these files with the original DLLs.
     
  12. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    MSMG Toolkit - Integrate WHD Additional Updates Menu
    [2] Integrate Windows 10 Upgrade Prerequisites

    These folder paths are inserted in the code for both W7 and W81:

    WHD\w7\x64\Extra\WithoutKB3125574\_Windows10
    WHD\w81\x64\Extra\WithoutKB3125574\_Windows10

    It looks like this is correct, you should search for this Windows 10 Additional scheme to be able to put inside the indicated folders. However, I vaguely remember the function.
     
  13. rulman

    rulman MDL Member

    Jan 25, 2012
    103
    22
    10
    I have to manually open new folder and copy the files myself.
    Automatically when I download "WHDownloader 0.0.2.4" and "Windows 8.1"
    "Additional\Windows10" downloads files to this folder path.
    This folder path "Extra\WithoutKB3125574\_Windows10" does not exist.

    So the codes need to be updated to "Additional\Windows10" for Windows 8.1.
    WHDownloader\Updates\Windows8.1-Update3-x64\Additional\Windows10
    WHDownloader\Updates\Windows8.1-x64\Additional\Windows10
    WHDownloader\Updates\Windows7-x86\Additional\Windows10

    The downloaded folder is automatically here. "WithoutKB3125574\_Windows10"
    This is invalid.


    Also ;
    Is it normal that these two are not added?

    An error occurred trying to open - D:\Toolkit_v12.0\Temp\Updates\Windows8.1-KB3014442-x64.cab Error: 0x80070003
    An error occurred trying to open -

    KB3014442
    w81\x64\Baseline\Windows8.1-KB3014442-x64.msu

    While this folder is in the path, the installation did not occur and gave an error. Then when I put it in any other folder, it loaded automatically.
    I tried to integrate the whole system at least 5 times. I got the same error on all of them.
    "Windows Embedded 8.1 Industry Pro"
    If you have time, you can try it yourself!

    Finally, Net 4.8 KB4486105 shows that it is integrated without any problems. But we can see that when the system is opened or the package list is not integrated.
     
  14. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    In this case we have to wait for MSMG expertise. He decides what can be improved in the integrations. When I collaborate with optimizations, these optimizations are more related to code reduction (amount of characters used), but to effect the same task. With regard to this path "\WithoutKB3125574\_Windows10", He must have had some special reason to have implemented this routine in the code. My customizations are more related to menus and basic implementations unrelated to system integrations.
     
  15. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    Checks if the cab is in the folder.

    I believe a line in the code, for the extraction of this MSU, is absent.

    You can use Bandizip to manually extract the CAB package from the MSU package and check if there is a need to rename the file to "Windows8.1-KB3014442-x64.cab". Note: Extract only the cab.

    or change in Toolkit
    from:
    Code:
    :: Windows 8.1 with Update (IR3 Build : 6.3.9600.17031)
    if "%SelectedSourceOS%" equ "w81" if "%ImageServicePackBuild%" equ "17031" (
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
    
       :: Copy .CAB files from .MSU package files to CAB Temporary folder
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
    )
    
    :: Windows 8.1 with Update Refresh (IR4 Build : 6.3.9600.17056)
    if "%SelectedSourceOS%" equ "w81" if "%ImageServicePackBuild%" equ "17056" (
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
    
       :: Copy .CAB files from .MSU package files to CAB Temporary folder
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
    )
    
    
    to
    Code:
    :: Windows 8.1 with Update (IR3 Build : 6.3.9600.17031)
    if "%SelectedSourceOS%" equ "w81" if "%ImageServicePackBuild%" equ "17031" (
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3014442-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3014442-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
    
       :: Copy .CAB files from .MSU package files to CAB Temporary folder
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3014442-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3014442-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
    )
    
    :: Windows 8.1 with Update Refresh (IR4 Build : 6.3.9600.17056)
    if "%SelectedSourceOS%" equ "w81" if "%ImageServicePackBuild%" equ "17056" (
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3014442-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3014442-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
    
       :: Copy .CAB files from .MSU package files to CAB Temporary folder
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3014442-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3014442-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
    )
    
    You can verify that only the lines related to KB3014442 were added. There are 4 blocks of code. In each block, it is the last line.
     
  16. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    #21957 inTerActionVRI, Jan 3, 2022
    Last edited: Jan 5, 2022
    An example of reducing code related to the above modification:

    Not tested, but it should work.

    to change in Toolkit
    from:
    Code:
    :: Windows 8.1 RTM (Build : 6.3.9600.16384)
    if "%SelectedSourceOS%" equ "w81" if %ImageServicePackBuild% equ 16384 (
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2919355-%ImageArchitecture%*.msu" expand "%Updates%\RTM\Windows8.1-KB2919355-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2932046-%ImageArchitecture%*.msu" expand "%Updates%\RTM\Windows8.1-KB2932046-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2937592-%ImageArchitecture%*.msu" expand "%Updates%\RTM\Windows8.1-KB2937592-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2938439-%ImageArchitecture%*.msu" expand "%Updates%\RTM\Windows8.1-KB2938439-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2938772-%ImageArchitecture%*.msu" expand "%Updates%\RTM\Windows8.1-KB2938772-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
    
       :: Copy .CAB files from .MSU package files to CAB Temporary folder
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2919355-%ImageArchitecture%*.cab" %XCopy% "%Updates%\RTM\Windows8.1-KB2919355-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2932046-%ImageArchitecture%*.cab" %XCopy% "%Updates%\RTM\Windows8.1-KB2932046-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2937592-%ImageArchitecture%*.cab" %XCopy% "%Updates%\RTM\Windows8.1-KB2937592-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2938439-%ImageArchitecture%*.cab" %XCopy% "%Updates%\RTM\Windows8.1-KB2938439-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\RTM\Windows8.1-KB2938772-%ImageArchitecture%*.cab" %XCopy% "%Updates%\RTM\Windows8.1-KB2938772-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
    )
    
    :: Windows 8.1 with Update (IR3 Build : 6.3.9600.17031)
    if "%SelectedSourceOS%" equ "w81" if "%ImageServicePackBuild%" equ "17031" (
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
    
       :: Copy .CAB files from .MSU package files to CAB Temporary folder
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB2934018-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
    )
    
    :: Windows 8.1 with Update Refresh (IR4 Build : 6.3.9600.17056)
    if "%SelectedSourceOS%" equ "w81" if "%ImageServicePackBuild%" equ "17056" (
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
    
       :: Copy .CAB files from .MSU package files to CAB Temporary folder
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3000850-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3003057-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
    )
    
    :: Windows 8.1 with Update Refresh (IR5 Build : 6.3.9600.17415)
    if "%SelectedSourceOS%" equ "w81" if "%ImageServicePackBuild%" equ "17415" (
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
    
       :: Copy .CAB files from .MSU package files to CAB Temporary folder
       if exist "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
       if exist "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB5001403-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
    )
    
    to
    Code:
    :: Windows 8.1
    if "%SelectedSourceOS%" equ "w81" (
       for %%# in (
           2919355
           2932046
           2937592
           2938439
           2938772
       ) do (
           set "KB%%#=RTM"
       )
    
       for %%# in (
           3021910
           2919355
           3000850
           2932046
           2934018
           2937592
           2938439
           2938772
           3003057
           5001403
           3014442
       ) do (
           :: RTM ^(Build : 6.3.9600.16384^)
           if "%ImageServicePackBuild%" equ "16384" (
               if "!KB%%#!" equ "" if exist "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
               if "!KB%%#!" equ "RTM" if exist "%Updates%\RTM\Windows8.1-KB%%#-%ImageArchitecture%*.msu" expand "%Updates%\RTM\Windows8.1-KB%%#-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
               :: Copy .CAB files from .MSU package files to CAB Temporary folder
               if "!KB%%#!" equ "" if exist "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB3021910-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
               if "!KB%%#!" equ "RTM" if exist "%Updates%\RTM\Windows8.1-KB%%#-%ImageArchitecture%*.cab" %XCopy% "%Updates%\RTM\Windows8.1-KB%%#-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
           )
           :: with Update ^(IR3 Build : 6.3.9600.17031^)
           if "%ImageServicePackBuild%" equ "17031" if "!KB%%#!" equ "" (
               if exist "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
               :: Copy .CAB files from .MSU package files to CAB Temporary folder
               if exist "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
           )
           :: with Update Refresh ^(IR4 Build : 6.3.9600.17056^)
           if "%ImageServicePackBuild%" equ "17056" if "!KB%%#!" equ "" if "%%#" neq "2934018" (
               if exist "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
               :: Copy .CAB files from .MSU package files to CAB Temporary folder
               if exist "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
           )
           :: with Update Refresh ^(IR5 Build : 6.3.9600.17415^)
           if "%ImageServicePackBuild%" equ "17415" if "!KB%%#!" equ "" if "%%#" neq "2934018" if "%%#" neq "3000850" if "%%#" neq "3003057" if "%%#" neq "3014442" (
               if exist "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.msu" expand "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.msu" -F:Win*.cab "%Temp%\Updates" >nul
               :: Copy .CAB files from .MSU package files to CAB Temporary folder
               if exist "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.cab" %XCopy% "%Updates%\Windows8.1-KB%%#-%ImageArchitecture%*.cab" "%Temp%\Updates" >nul
           )
       )
    )
    
    EDIT: Optimized and shortened for the entire session (Windows 8.1) for extraction of the .cab packages from .msu packages.
     
  17. rulman

    rulman MDL Member

    Jan 25, 2012
    103
    22
    10
  18. rulman

    rulman MDL Member

    Jan 25, 2012
    103
    22
    10
    @inTerActionVRI
    Thank you very much for your patience and interest.
    I'll test when the new version is released (updated).

    In addition, addons packages have not been released yet.
    For example, the packages I use the most are; "NetFX48" and "VCRuntime"