the only thing they dont have is get-TargetEdition's it's not public api, from last time i visit their site but it does exist in origional dism exe tool ? so why they not make it public api ? who know
Code: function Get-TargetEdition { param( [Parameter(Mandatory=$true)] [System.Windows.Forms.Form]$Form ) try { Write-Host "Get-TargetEdition function called at $(Get-Date -Format 'HH:mm:ss')" Add-StatusMessage -Form $Form -Message "$(Get-Date -Format 'HH:mm:ss'): Retrieving target editions..." # Validate form if ($null -eq $Form -or $Form.IsDisposed) { throw "Main form is null or disposed" } # Check administrator privileges $currentPrincipal = New-Object Security.Principal.WindowsPrincipal([Security.Principal.WindowsIdentity]::GetCurrent()) if (-not $currentPrincipal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) { throw "This operation requires administrator privileges. Please run PowerShell as Administrator." } # Validate WIM path and image index if ([string]::IsNullOrEmpty($global:CurrentWimPath) -or -not (Test-Path $global:CurrentWimPath)) { Add-StatusMessage -Form $Form -Message "WIM file not found. Please analyze a WIM file first." -ForegroundColor Red [System.Windows.Forms.MessageBox]::Show("WIM file not found. Please analyze a WIM file first.", "Error", "OK", "Warning") return } # Find controls $cmbImageIndex = Find-Control -Form $Form -Name "cmbImageIndex" $mainProgressBar = Find-Control -Form $Form -Name "mainProgressBar" $lblProgressStatus = Find-Control -Form $Form -Name "lblProgressStatus" if ($null -eq $cmbImageIndex -or $cmbImageIndex.SelectedIndex -eq -1) { Add-StatusMessage -Form $Form -Message "Please select an image index." -ForegroundColor Red [System.Windows.Forms.MessageBox]::Show("Please select an image index.", "Error", "OK", "Warning") return } if ($null -eq $mainProgressBar -or $null -eq $lblProgressStatus) { throw "Progress bar or status label not found in main form." } # Get selected index $selectedText = $cmbImageIndex.SelectedItem.ToString() $selectedIndex = [int]($selectedText.Split(' - ')[0]) # Set cursor to wait $Form.Cursor = [System.Windows.Forms.Cursors]::WaitCursor # Initialize progress if ($Form.InvokeRequired) { $Form.Invoke([Action]{ $mainProgressBar.Value = 10; $lblProgressStatus.Text = "Retrieving target editions..." }) } else { $mainProgressBar.Value = 10 $lblProgressStatus.Text = "Retrieving target editions..." } [System.Windows.Forms.Application]::DoEvents() # Start retrieving target editions $logFile = Join-Path $global:LogDir "dism_targetedition_$(Get-Date -Format 'yyyyMMdd_HHmmss').log" Write-Host "Retrieving target editions - WIM Path: $global:CurrentWimPath, Index: $selectedIndex" # Simulate progress for short operation Start-Sleep -Milliseconds 500 if ($Form.InvokeRequired) { $Form.Invoke([Action]{ $mainProgressBar.Value = 50; $lblProgressStatus.Text = "Processing target editions..." }) } else { $mainProgressBar.Value = 50 $lblProgressStatus.Text = "Processing target editions..." } [System.Windows.Forms.Application]::DoEvents() # Get target editions $targetEditions = Get-WindowsEdition -Path $global:CurrentWimPath -Index $selectedIndex -Target -LogPath $logFile | Select-Object -ExpandProperty TargetEdition | Sort-Object -Unique # Finalize progress if ($Form.InvokeRequired) { $Form.Invoke([Action]{ $mainProgressBar.Value = 100; $lblProgressStatus.Text = "Target editions retrieved successfully" }) } else { $mainProgressBar.Value = 100 $lblProgressStatus.Text = "Target editions retrieved successfully" } [System.Windows.Forms.Application]::DoEvents() # Display results if ($targetEditions.Count -eq 0) { Add-StatusMessage -Form $Form -Message "No target editions available for index $selectedIndex." [System.Windows.Forms.MessageBox]::Show("No target editions available for the selected image.", "Information", "OK", "Information") } else { $editionList = $targetEditions -join ", " Add-StatusMessage -Form $Form -Message "Target editions for index $selectedIndex`: $editionList" [System.Windows.Forms.MessageBox]::Show("Target editions for index $selectedIndex`:`n$editionList", "Success", "OK", "Information") } Update-GuiStatus -Form $Form } catch { $errorMsg = "$(Get-Date -Format 'HH:mm:ss'): Error retrieving target editions: $($_.Exception.Message)" Write-Host $errorMsg -ForegroundColor Red Add-StatusMessage -Form $Form -Message $errorMsg -ForegroundColor Red [System.Windows.Forms.MessageBox]::Show($errorMsg, "Error", "OK", "Error") if ($null -ne $mainProgressBar -and $null -ne $lblProgressStatus) { if ($Form.InvokeRequired) { $Form.Invoke([Action]{ $mainProgressBar.Value = 0; $lblProgressStatus.Text = "Operation failed" }) } else { $mainProgressBar.Value = 0 $lblProgressStatus.Text = "Operation failed" } } } finally { if ($null -ne $Form -and -not $Form.IsDisposed) { $Form.Cursor = [System.Windows.Forms.Cursors]::Default } Update-GuiStatus -Form $Form } }
so, they do have, i miss that one. i upgrade my version, pure xml logic, support any build, even if it *Not* installed on my system (you have 2 xml, and i did compare this method to original API, result same)
Works with The image, version? (windows_10_consumer_editions_version_22h2_updated_june_2025_x64_dvd_aace2d00.iso) I chose option 2, but it didn't remove the apps.
Hi, I'm using slimdown 1.19 and succesfully installed, but the background set to windows spotlight, in slimdown 1.12 there's no windows spotlight, why? And in 1.19 there's no gpedit.msc, why? Thanks.
In version 1.12, the Docs folder in $OEM$, which contains some additional settings, was not added. In version 1.19, this additional folder was added. That is the difference. Regarding gpedit.msc, what is your question? The app was not removed and in the Context Menu in ThisPC there is a direct link.
===================== SD10_Renewed_1.20 ===================== Updated to version 1904x.6036 - Added 19041.6036_mum folder with modified .mum files - Updated the hfixes_all.txt file - Modified PersonalTweaks - Adjusted $OEM$ folder content - Adjusted other configs Tested with: - pt-br_windows_10_enterprise_ltsc_2021_x64_dvd_f318268e.iso The Docs folder contains test images and log files https://forums.mydigitallife.net/threads/slimdown10_v2-0-2-continued.88599/
Thank you very much. I wish you luck in life and may all your wishes always come true. With all my heart, respect and love.
Thanks for your respond. There's no gpedit.msc file in 1.19 in my installed windows. I try to make slimdown again but this time I didn't copy the .mum files and install windows again and the gpedit.msc is there. When I copied the modified .mum files the result of iso file is 3.8G, but when I didn't copy the .mum files the iso file is 4.3G. So what these modified .mum files do?
Thanks, I re-run my test on VM. it worked fine. its size NOT small as expected. It's noticed that 1. install.wim size (3.82 GB) is about 0.63 GB greater than my last one (3.19 GB. https://forums.mydigitallife.net/threads/slimdown10_v2-0-2-continued.88599/page-30). am I doing some wrong? 2. LCUmum_folder name is NOT same. last time was "C:\Windows\Temp\W10UItemp_xxxx\Windows10.0-KBxxxxxxx-x64_inout" this time, folder name is W10UItemp_24272\LCUmum, is this correct? my concern is, I may be using incorrect folder. 3. its features are same as last one. clean "Start" button. I forgot how to upload SD10_Renewed_1.20.log. :-( please better tell me to click which icon to upload the log file. presently I uploaded a zip file.
''C:\Windows\Temp\W10UItemp_15801\Windows10.0-KB5061087-x64_inout'' ''Windows10.0-KB5061087-x64_inout'' This is the name of the folder where you need to add(replace) '' .mum'' the files. To add the log file, replace the name of : ''SD10_Renewed_1.20.txt''
These modified .mum files remove several things from the system. And you are right. gpedit.msc is not present when using .mum files. I will try to find out and fix it. Thanks for your help!