1. 正义羊

    正义羊 MDL Senior Member

    Feb 21, 2016
    258
    152
    10
    @MSMG , In v12.1 line 16481,

    App to add Microsft Account for Microsoft Apps

    It should be

    App to add Microsoft Account for Microsoft Apps
     
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  2. xlincn

    xlincn MDL Junior Member

    Nov 9, 2013
    50
    15
    0
    #22324 xlincn, Mar 23, 2022
    Last edited: Mar 23, 2022
    There are no edits when using it

    Curiously, after using NTLite first, then using MSMG ToolKit everything works fine
     
  3. 正义羊

    正义羊 MDL Senior Member

    Feb 21, 2016
    258
    152
    10
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  4. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    When I returned I read everything I had missed. I had seen that your suggestion was made before MSMG came back and released the new version.
    MSMG implemented the change, in this current version.
    Yes, I think I understand your point.
    I also optimized the code for creating the Information Texts that are stored in the Temp folder. In the Custom Tookit it is "C:\TK\TMP", no matter where you put the Toolkit main folder. The InstallMedia (DVD), Mount and TMP folders, will always be on C: which is supposed to be an SSD, unless the user doesn't have an SSD yet.
    In this case, in the Custom Toolkit, it was not necessary to change, because the working directory during execution, will always be SytemDRIVE (usually C:).
    It has been many versions since I changed this. It was in Custom Toolkit 11.4 5th patch (CHANGELOG 2021-04-14).

    But if you can test it, and you have something.
    I'm grateful for the warning of the bugs found.
     
  5. MSMG

    MSMG MDL Developer

    Jul 15, 2011
    6,414
    15,608
    210

    Yes the current Toolkit doesn't follow automated process like select all the required options instead each option is execute when selected and that's why sometimes the order may change according to the users choice and also the MS makes things further complex by adding new prerequisites to perform a task.

    I'm working on two other tools based on DISMApi with one tool being like the current CMD Toolkit with the difference that all the required options or features are selected first and then applied at the last, contains pure dynamic menus, enable/disable capabilities/features, the integrate drivers display full driver info, most of the current features in the integration part are treated as updates and moved to updates part where the user just need to copy the cab/msu files to the updates folder and the tool will display the language packs, winpe language packs, features packs and updates in proper order.

    Make sure you put a warning note for the users about the cleanup-image generating ghost SFC bug.

    Will make changes to the Toolkit script to include Disable New Watermark Message: "System requirements not met. Go to Settings to learn more." tweak.
     
  6. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    #22329 inTerActionVRI, Mar 24, 2022
    Last edited: Mar 25, 2022
    I didn't put a warning message in that part. But I put a question, so they can decide if they want to do the "Cleanup Source" or not.
    And, for the fully automated process, only the NetFX35 Integration will occur, without "Cleanup Source".

    With this message of yours, people will be more aware of this warning.
    This warning will certainly be present in the next version.
    Code:
       echo.-------------------------------------------------------------------------------
       echo.####Enabling Windows Features Using Features List##############################
       echo.-------------------------------------------------------------------------------
    
       for %%i in (!ImageIndexNo!) do (
           if exist "%InstallMount%\%%i" (
               echo.
               if %%i leq 9 echo.===========================[Install.wim, Index :  %%i]===========================
               if %%i gtr 9 echo.===========================[Install.wim, Index : %%i]===========================
               echo.
               echo.    Image Edition          : "!ImageEdition%%i!"
               echo.
               echo.
    
               for /f "eol=# tokens=*" %%z in ('type "%EnableFeaturesList%" 2^>nul') do (
                   if "%ImageBuild%" geq "17763" (
                       if /i "%%z" neq "NetFX3" if /i "%%z" neq "Microsoft-Windows-Client-EmbeddedExp-Package" if /i "%%z" neq "Microsoft-Windows-NetFx3-OC-Package" if /i "%%z" neq "Microsoft-Windows-NetFx3-WCF-OC-Package" if /i "%%z" neq "Microsoft-Windows-NetFx4-US-OC-Package" if /i "%%z" neq "Microsoft-Windows-NetFx4-WCF-US-OC-Package" if /i "%%z" neq "FaxServicesClientPackage" if /i "%%z" neq "Internet-Explorer-Optional-amd64" if /i "%%z" neq "Windows-Defender-ApplicationGuard" if /i "%%z" neq "SmbDirect" if /i "%%z" neq "ServicesForNFS-ClientOnly" if /i "%%z" neq "ClientForNFS-Infrastructure" if /i "%%z" neq "NFS-Administration" if /i "%%z" neq "Microsoft-Hyper-V" if /i "%%z" neq "Microsoft-Hyper-V-All" if /i "%%z" neq "Microsoft-Hyper-V-Hypervisor" if /i "%%z" neq "Microsoft-Hyper-V-Management-Clients" if /i "%%z" neq "Microsoft-Hyper-V-Management-PowerShell" if /i "%%z" neq "Microsoft-Hyper-V-Services" if /i "%%z" neq "Microsoft-Hyper-V-Tools-All" if /i "%%z" neq "Containers-DisposableClientVM" if /i "%%z" neq "Containers" if /i "%%z" neq "Containers-HNS" if /i "%%z" neq "Containers-SDN" (
                           call :EnableFeature "%InstallMount%\%%i" %%z
                       )
                       if "%ImageBuild%" lss "21996" (
                           if "%ImageBuild%" lss "19041" (
                               if /i "%%z" equ "Microsoft-Windows-Client-EmbeddedExp-Package" call :EnableFeature "%InstallMount%\%%i" %%z
                               if /i "%%z" equ "Microsoft-Windows-NetFx3-OC-Package" call :EnableFeature "%InstallMount%\%%i" %%z
                               if /i "%%z" equ "Microsoft-Windows-NetFx3-WCF-OC-Package" call :EnableFeature "%InstallMount%\%%i" %%z
                               if /i "%%z" equ "Microsoft-Windows-NetFx4-US-OC-Package" call :EnableFeature "%InstallMount%\%%i" %%z
                               if /i "%%z" equ "Microsoft-Windows-NetFx4-WCF-US-OC-Package" call :EnableFeature "%InstallMount%\%%i" %%z
                               if /i "%%z" equ "FaxServicesClientPackage" call :EnableFeature "%InstallMount%\%%i" %%z
                           )
                           if /i "%ImageArchitecture%" neq "x86" if /i "%ImageArchitecture%" neq "arm" if /i "%ImageArchitecture%" neq "arm64" (
                               if /i "%%z" equ "Internet-Explorer-Optional-amd64" call :EnableFeature "%InstallMount%\%%i" %%z
                           )
                       )
                       if /i "!ImageEdition%%i!" neq "Core" if /i "!ImageEdition%%i!" neq "CoreN" if /i "!ImageEdition%%i!" neq "CoreSingleLanguage" (
                           if /i "%%z" equ "Windows-Defender-ApplicationGuard" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "SmbDirect" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "ServicesForNFS-ClientOnly" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "ClientForNFS-Infrastructure" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "NFS-Administration" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Microsoft-Hyper-V" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Microsoft-Hyper-V-All" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Microsoft-Hyper-V-Hypervisor" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Microsoft-Hyper-V-Management-Clients" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Microsoft-Hyper-V-Management-PowerShell" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Microsoft-Hyper-V-Services" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Microsoft-Hyper-V-Tools-All" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Containers-DisposableClientVM" call :EnableFeature "%InstallMount%\%%i" %%z
                           if /i "%%z" equ "Containers" call :EnableFeature "%InstallMount%\%%i" %%z
                           if "%ImageBuild%" geq "21996" (
                               if /i "%%z" equ "Containers-HNS" call :EnableFeature "%InstallMount%\%%i" %%z
                               if /i "%%z" equ "Containers-SDN" call :EnableFeature "%InstallMount%\%%i" %%z
                           )
                       )
                   )
               )
           )
       )
       for /f "eol=# tokens=*" %%z in ('type "%EnableFeaturesList%" 2^>nul') do (
           if /i "%%z" equ "NetFX3" (
               call :CleanupSource
               call :IntNetFX35
           )
       )
    
       echo.-------------------------------------------------------------------------------
       echo.####Finished Enabling Windows Features Using Features List#####################
       echo.-------------------------------------------------------------------------------
    
    

    Code:
    ::-------------------------------------------------------------------------------------------
    :: Function to Cleanup Source Images
    ::-------------------------------------------------------------------------------------------
    :CleanupSource
    
    if "%SelectedSourceOS%" equ "w81" set "CleanupSources=1"
    if "%SelectedSourceOS%" neq "w7" if "%SelectedSourceOS%" neq "w81" (
       if "%ImageBuild%" leq "17763" set "CleanupSources=1"
       if "%ImageBuild%" geq "18362" (
           if "%IsDialogsEnabled%" equ "Yes" if "!CleanupSources_Warning!" equ "" (
               cls
               echo.
               echo.===============================================================================
               echo.   MSMG Toolkit - Cleanup Source Images with Component Cleanup ^& ResetBase
               echo.===============================================================================
               echo.
               echo.                                W A R N I N G
               echo.                                =============
               echo.
               echo. The SFC ghost error comes since the M^$ has executed "DISM /Cleanup-Image"
               echo. command before performing the Sysprep. This bug is present in all OS source
               echo. image version equal to or greater than 1903 ^(Build 18362^) with LCU integrated
               echo. ^(included Official LTSC 2021^) and "DISM /Cleanup-Image" command executed.
               echo.
               echo. forums.mydigitallife.net/threads/msmg-toolkit.50572/page-1114#post-1726900
               echo.
               echo.
               echo. The only way to fix the "SFC ghost bug" is by running the "SFC /SCANNOW"
               echo. command once after installation.
               echo.
               echo. forums.mydigitallife.net/threads/msmg-toolkit.50572/page-1114#post-1726897
               echo.
               echo.
               echo.===============================================================================
               echo.
               choice /C:YN /N /M "Do you want to Cleanup Source Images ? ['Y'es/'N'o] : "
               if errorlevel 2 goto :Stop
               if errorlevel 1 (
                   set "CleanupSources_Warning=Yes"
                   set "CleanupSources=1"
               )
           )
       )
    )
    
    if "!CleanupSources!" neq "" (
       cls
       echo.===============================================================================
       echo.   MSMG Toolkit - Cleanup Source Images with Component Cleanup ^& ResetBase
       echo.===============================================================================
       echo.
       :: Unmount Image Registry if Mounted
       call :UnMountImageRegistry
       echo.-------------------------------------------------------------------------------
       echo.####Starting Cleaning Up Source Images with Component Cleanup ^& ResetBase######
       echo.-------------------------------------------------------------------------------
       echo.
       if "%IsBootImageSelected%" equ "Yes" (
           :: Performing [Boot.wim, Index : 1 and 2] Image Component Cleanup with ResetBase Option
           for /l %%i in (1, 1, 2) do (
               echo.-------------------------------------------------------------------------------
               echo.Performing [Boot.wim, Index : %%i] Image Component Cleanup...
               echo.-------------------------------------------------------------------------------
               call :CleanupImage "%BootMount%\%%i", "ComponentCleanupResetBase"
           )
       )
    
       if "%IsRecoveryImageSelected%" equ "Yes" if exist "%WinReMount%\Windows" (
           :: Performing [WinRE.wim] Image Component Cleanup with ResetBase Option
           echo.-------------------------------------------------------------------------------
           echo.Performing [Install.wim, Index : !SpecifiedSourceIndex! -^> WinRE.wim] Image Component Cleanup...
           echo.-------------------------------------------------------------------------------
           call :CleanupImage "%WinReMount%", "ComponentCleanupResetBase"
       )
    
       for %%i in (!ImageIndexNo!) do (
           if exist "%InstallMount%\%%i" (
               :: Performing [Install.wim] Image Component Clean-Up with ResetBase Option
               echo.-------------------------------------------------------------------------------
               echo.Performing [Install.wim, Index : %%i] Image Component Cleanup...
               echo.-------------------------------------------------------------------------------
               if exist "%InstallMount%\%%i\Windows\WinSxS\pending.xml" (
                   echo.
                   echo.Cannot Perform Image Component Cleanup when Pending.xml is present...
                   echo.
               ) else (
                   if "%SelectedSourceOS%" equ "w7" call :CleanupImage "%InstallMount%\%%i", "SPSupersededHideSP"
                   if "%SelectedSourceOS%" neq "w7" call :CleanupImage "%InstallMount%\%%i", "ComponentCleanupResetBase"
               )
           )
       )
    
       echo.-------------------------------------------------------------------------------
       echo.####Finished Cleaning Up Source Images with Component Cleanup ^& ResetBase######
       echo.-------------------------------------------------------------------------------
    )
    
    :Stop
    echo.
    echo.===============================================================================
    echo.
    
    set CleanupSources=
    
    This is very, very nice! Then the anxiety sticks with me, hehehehe
     
  7. Panco1

    Panco1 MDL Junior Member

    Dec 29, 2014
    55
    44
    0
    I make windows 10 golden iso whit this tool and is amazing fast remove all crap and blotware.i have one question is this tool completely remove telemetry in windows iso ? Sorry for bad English
     
  8. MSMG

    MSMG MDL Developer

    Jul 15, 2011
    6,414
    15,608
    210
    Will test with the ImageFlag and make the required changes.
     
  9. MSMG

    MSMG MDL Developer

    Jul 15, 2011
    6,414
    15,608
    210
    Thanks for the feedback, have made the changes, since the license xml for RawImageExtension is available now it will be added in next release.
     
  10. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    It depends on what you remove, what you implement and what tweaks you apply.
    And even so, there is always something up MS has up its sleeve, well buried in its software to get some data from us, hehehehe.

    Never think that there is a tool that can eliminate 100% of telemetry.
    But certainly this tool is constantly being updated, so that within what is possible to be removed and disabled, without losing functionality, it is available. And yet there may be new things that we don't know about yet. It is always this way.
     
  11. MSMG

    MSMG MDL Developer

    Jul 15, 2011
    6,414
    15,608
    210
    The MS makes Windows versions for all editions but making the edition available is there choice, now with recent CU adding Edge Legacy and Edge Chromium to even LTSC images I have made the Edge Legacy removal for LTSC images too.

    OneDrive and SecureAssessmentBrowser won't be present if the LTSC editions are available for 1836x builds.
     
  12. Panco1

    Panco1 MDL Junior Member

    Dec 29, 2014
    55
    44
    0
    I Remove all component on privacy
     
  13. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    Yes, this is just one of the possible parts that can be worked on.
    In your daily use you will realize if you will lose some useful functionality for you.
    Then just make another ISO, keeping the removed feature. And, this is how you develop your customization.
    I used to make the most Lite ISO possible, totally privacy oriented. And, in the end, I have linux and windows dual boot, I open my distro and do my shopping. kkkkk
     
  14. Panco1

    Panco1 MDL Junior Member

    Dec 29, 2014
    55
    44
    0
    Tnx for youre answer my man.btw can you share youre iso lite when be done :)
     
  15. inTerActionVRI

    inTerActionVRI MDL Expert

    Sep 23, 2009
    1,748
    3,575
    60
    I think I understand.
    That is, this is not the case, since there is no LTSC for 1836x.
    Is that correct?