winutil/functions/public/Invoke-WPFundoall.ps1
Chris Titus a1c7501b98
Test 12 2022 - Big Foundational Update (#637)
* Fix of the unit tests (#468)

* fix pester tests

* fix function (#467)

* Cherry pick and fix helper script

* remove admin check and disable

* Trim Trailing Whitespace (#472)

Co-authored-by: Chris Titus <contact@christitus.com>

* Better .gitignore (#473)

* add progress and add wait to start-process (#475)

* Fixed Cloudflare Naming (#504)

* Update winutil.ps1

* Update MainWindow.xaml

* Update check for Chocolatey  (#520)

* Update winutil.ps1

* Update check for Chocolatey

Let user decide if he wants to install Chocolatey

* Update winutil.ps1 (#525)

Migrate to Switch-Tab function

* Update winutil.ps1 (#531)

Changes to "DiagTrack" service.

* add responsive winget installs (#540)

* add responsive winget installs

* Update winutil.ps1

fix typo

* remove no longer used paramater

* add golang, an installation option in development list (#542)

* Updated winget functions (#543)

* update functions

* Update winutil.ps1

forgot triple quotes

* Update winutil.ps1

fixed vscode using wrong double quotes

* Functions and error handling (#552)

* move winget install to function and exception

* updated winget upgrade to new install process

* add logging to update

* choco to function and write-output to ensure logs

* update error handling

* revert write-host and add invoke-runspace

* Added runspace to load configs in background

* fix unit tests

* update pester tests

* update pester

* update pester

* update pester

* updated tweaks config to use WPF variable name

* Fix data type of MouseHoverTime (#568)

Setting Computer\HKEY_CURRENT_USER\Control Panel\Mouse\MouseHoverTime needs to be REG_SZ instead of REG_DWORD.
With the wrong type the Taskbar and the Start Menu become hard to use because everything pops up instantly, probably because it's then treated as a 0 ms delay.

* fix restore launch to quick access & OOSU10 download (#565)

* Fix grammar (#577)

* Update MainWindow.xaml

* Update MainWindow-runspace.xaml

* fix enable numlock after startup (#580)

* Update README.md (#616)

Added DNS provider into readme

* Fix O&O ShutUp10 disabling app notifications and hide search box (#630)

* Add files via upload

Added ooshutup10_winutil_settings and fix the issue where OOSU10 disable app notifications and hide search box in windows.

* Update winutil.ps1

Change ooshut10.cfg to ooshutup10_winutil_settings.cfg and fix the issues in https://github.com/ChrisTitusTech/winutil/issues/629
Now when apply the tweaks by O&O ShutUp10, will keep search box and notifications will not be disabled.

* Update winutil.ps1

* Update winutil.ps1

---------

Co-authored-by: Chris Titus <contact@christitus.com>

* Create ooshutup10_winutil_settings.cfg

* Feature/tweakstofunctions (#576)

* add functions for services

* Move WPFEssTweaksDVR to function

* Add invoke script and moved temp files

* WPFEssTweaksHiber and formatting

* WPFEssTweaksHiber

* WPFEssTweaksHome and service

* WPFEssTweaksLoc

* TPMCheck

* WPFEssTweaksDiskCleanup

* Add error handling for invoke script

* grammer

* UAC and tweaks

* WPFMiscTweaksDisableNotifications

* WPFMiscTweaksRightClickMenu

* Added DNS configuration + Reset to DHCP

* WPFEssTweaksOO

* WPFEssTweaksRP

* WPFEssTweaksServices

* WPFEssTweaksStorage

* WPFEssTweaksTele

* WPFEssTweaksWifi

* WPFMiscTweaksLapPower

* WPFMiscTweaksLapNum

* WPFMiscTweaksPower

* WPFMiscTweaksNum

* WPFMiscTweaksExt

* WPFMiscTweaksUTC

* WPFMiscTweaksDisplay

* Mouse Acceleration

* WPFEssTweaksRemoveCortana

* WPFEssTweaksDeBloat

* set teaks to get checkboxes and loop

* remove isdev

* add help documentation

* Add Quad 9 for #532 and #416

* remove isdev

* Update tweaks.json

Remove-ItemProperty is no longer needed as this was a bug from a bad commit 4 months ago.

---------

Co-authored-by: Chris Titus <contact@christitus.com>

* Tweak bingsearch (#620)

* add functions for services

* Move WPFEssTweaksDVR to function

* Add invoke script and moved temp files

* WPFEssTweaksHiber and formatting

* WPFEssTweaksHiber

* WPFEssTweaksHome and service

* WPFEssTweaksLoc

* TPMCheck

* WPFEssTweaksDiskCleanup

* Add error handling for invoke script

* grammer

* UAC and tweaks

* WPFMiscTweaksDisableNotifications

* WPFMiscTweaksRightClickMenu

* Added DNS configuration + Reset to DHCP

* WPFEssTweaksOO

* WPFEssTweaksRP

* WPFEssTweaksServices

* WPFEssTweaksStorage

* WPFEssTweaksTele

* WPFEssTweaksWifi

* WPFMiscTweaksLapPower

* WPFMiscTweaksLapNum

* WPFMiscTweaksPower

* WPFMiscTweaksNum

* WPFMiscTweaksExt

* WPFMiscTweaksUTC

* WPFMiscTweaksDisplay

* Mouse Acceleration

* WPFEssTweaksRemoveCortana

* WPFEssTweaksDeBloat

* set teaks to get checkboxes and loop

* remove isdev

* add help documentation

* Add Quad 9 for #532 and #416

* remove isdev

* Update helper script and add tweak

* update changes

* Refactor/runspaces (#626)

* modify runspace.ps1 to compile

* update compiler to include warning

* unit test

* implement invoke-button and naming standard

* naming standard

* fix winutil tests

* update functions

* add version number

* fix codeowners

* fix import

* undo tweaks now pull from config

* pester test

* Compile Winutil

* python and oo cfg

-fix python 3 to 3.11
-fix o&o shutup cfg
-enable dev mode for testing

* Force install missing winget

Fix method for winget install on any system.

* Deluge Addition

* Feature/impex (#619)

* add functions for services

* Move WPFEssTweaksDVR to function

* Add invoke script and moved temp files

* WPFEssTweaksHiber and formatting

* WPFEssTweaksHiber

* WPFEssTweaksHome and service

* WPFEssTweaksLoc

* TPMCheck

* WPFEssTweaksDiskCleanup

* Add error handling for invoke script

* grammer

* UAC and tweaks

* WPFMiscTweaksDisableNotifications

* WPFMiscTweaksRightClickMenu

* Added DNS configuration + Reset to DHCP

* WPFEssTweaksOO

* WPFEssTweaksRP

* WPFEssTweaksServices

* WPFEssTweaksStorage

* WPFEssTweaksTele

* WPFEssTweaksWifi

* WPFMiscTweaksLapPower

* WPFMiscTweaksLapNum

* WPFMiscTweaksPower

* WPFMiscTweaksNum

* WPFMiscTweaksExt

* WPFMiscTweaksUTC

* WPFMiscTweaksDisplay

* Mouse Acceleration

* WPFEssTweaksRemoveCortana

* WPFEssTweaksDeBloat

* set teaks to get checkboxes and loop

* remove isdev

* add help documentation

* Add Quad 9 for #532 and #416

* remove isdev

* Working Import and Export

* Add null check

* Remove IsDev

* sync with test

* redo impex

* Irm runspace fix (#635)

* Update runspace.ps1

* Update start.ps1

* compiled for testing

* Compile Winutil

* Compile Winutil

* test

* disable runspace build

* test

* change compile to ascii

* change compile to winutil

* Compile Winutil

* Delete MainWindow.xaml

* Update release.yaml

runspace merge job

* remove update branch

---------

Co-authored-by: DeveloperDurp <developerdurp@durp.info>
Co-authored-by: Carter <60557606+Carterpersall@users.noreply.github.com>
Co-authored-by: Jacobtread <33708767+jacobtread@users.noreply.github.com>
Co-authored-by: jstok84 <jstok84@gmail.com>
Co-authored-by: WolfBungalow <irtwit@gmail.com>
Co-authored-by: Ankit Yadav <52023083+4nkitd@users.noreply.github.com>
Co-authored-by: Starfiresg1 <Starfiresg1@users.noreply.github.com>
Co-authored-by: Adrián Insaurralde Avalos <36372335+adrianinsaval@users.noreply.github.com>
Co-authored-by: Hyperio <96462198+hyperio546@users.noreply.github.com>
Co-authored-by: dennyamarojr <36896116+dennyamarojr@users.noreply.github.com>
Co-authored-by: ChrisTitusTech <ChrisTitusTech@users.noreply.github.com>
2023-03-07 12:28:00 -08:00

190 lines
13 KiB
PowerShell

function Invoke-WPFundoall {
<#
.DESCRIPTION
PlaceHolder
#>
if($sync.ProcessRunning){
$msg = "Install process is currently running."
[System.Windows.MessageBox]::Show($msg, "Winutil", [System.Windows.MessageBoxButton]::OK, [System.Windows.MessageBoxImage]::Warning)
return
}
$Tweaks = Get-WinUtilCheckBoxes -Group "WPFTweaks"
Invoke-WPFRunspace -ArgumentList $Tweaks -ScriptBlock {
param($Tweaks)
$sync.ProcessRunning = $true
Foreach ($tweak in $tweaks){
Invoke-WinUtilTweaks $tweak -undo $true
}
$sync.ProcessRunning = $false
Write-Host "=================================="
Write-Host "--- Undo Tweaks are Finished ---"
Write-Host "=================================="
$ButtonType = [System.Windows.MessageBoxButton]::OK
$MessageboxTitle = "Tweaks are Finished "
$Messageboxbody = ("Done")
$MessageIcon = [System.Windows.MessageBoxImage]::Information
[System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
}
<#
Write-Host "Creating Restore Point in case something bad happens"
Enable-ComputerRestore -Drive "$env:SystemDrive"
Checkpoint-Computer -Description "RestorePoint1" -RestorePointType "MODIFY_SETTINGS"
Write-Host "Enabling Telemetry..."
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "AllowTelemetry" -Type DWord -Value 1
Write-Host "Enabling Wi-Fi Sense"
Set-ItemProperty -Path "HKLM:\Software\Microsoft\PolicyManager\default\WiFi\AllowWiFiHotSpotReporting" -Name "Value" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\Software\Microsoft\PolicyManager\default\WiFi\AllowAutoConnectToWiFiSenseHotspots" -Name "Value" -Type DWord -Value 1
Write-Host "Enabling Application suggestions..."
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "ContentDeliveryAllowed" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "OemPreInstalledAppsEnabled" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "PreInstalledAppsEnabled" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "PreInstalledAppsEverEnabled" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SilentInstalledAppsEnabled" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338387Enabled" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338388Enabled" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-338389Enabled" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SubscribedContent-353698Enabled" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager" -Name "SystemPaneSuggestionsEnabled" -Type DWord -Value 1
If (Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent") {
Remove-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Recurse -ErrorAction SilentlyContinue
}
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableWindowsConsumerFeatures" -Type DWord -Value 0
Write-Host "Enabling Activity History..."
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "EnableActivityFeed" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "PublishUserActivities" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "UploadUserActivities" -Type DWord -Value 1
Write-Host "Enable Location Tracking..."
If (Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location") {
Remove-Item -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Recurse -ErrorAction SilentlyContinue
}
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\CapabilityAccessManager\ConsentStore\location" -Name "Value" -Type String -Value "Allow"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Sensor\Overrides\{BFA794E4-F964-4FDB-90F6-51056BFE4B44}" -Name "SensorPermissionState" -Type DWord -Value 1
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\lfsvc\Service\Configuration" -Name "Status" -Type DWord -Value 1
Write-Host "Enabling automatic Maps updates..."
Set-ItemProperty -Path "HKLM:\SYSTEM\Maps" -Name "AutoUpdateEnabled" -Type DWord -Value 1
Write-Host "Enabling Feedback..."
If (Test-Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules") {
Remove-Item -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Recurse -ErrorAction SilentlyContinue
}
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Siuf\Rules" -Name "NumberOfSIUFInPeriod" -Type DWord -Value 0
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\DataCollection" -Name "DoNotShowFeedbackNotifications" -Type DWord -Value 0
Write-Host "Enabling Tailored Experiences..."
If (Test-Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent") {
Remove-Item -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Recurse -ErrorAction SilentlyContinue
}
Set-ItemProperty -Path "HKCU:\SOFTWARE\Policies\Microsoft\Windows\CloudContent" -Name "DisableTailoredExperiencesWithDiagnosticData" -Type DWord -Value 0
Write-Host "Disabling Advertising ID..."
If (Test-Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo") {
Remove-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" -Recurse -ErrorAction SilentlyContinue
}
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\AdvertisingInfo" -Name "DisabledByGroupPolicy" -Type DWord -Value 0
Write-Host "Allow Error reporting..."
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting" -Name "Disabled" -Type DWord -Value 0
Write-Host "Allowing Diagnostics Tracking Service..."
Stop-Service "DiagTrack" -WarningAction SilentlyContinue
Set-Service "DiagTrack" -StartupType Manual
Write-Host "Allowing WAP Push Service..."
Stop-Service "dmwappushservice" -WarningAction SilentlyContinue
Set-Service "dmwappushservice" -StartupType Manual
Write-Host "Allowing Home Groups services..."
Stop-Service "HomeGroupListener" -WarningAction SilentlyContinue
Set-Service "HomeGroupListener" -StartupType Manual
Stop-Service "HomeGroupProvider" -WarningAction SilentlyContinue
Set-Service "HomeGroupProvider" -StartupType Manual
Write-Host "Enabling Storage Sense..."
New-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\StorageSense\Parameters\StoragePolicy" | Out-Null
Write-Host "Allowing Superfetch service..."
Stop-Service "SysMain" -WarningAction SilentlyContinue
Set-Service "SysMain" -StartupType Manual
Write-Host "Setting BIOS time to Local Time instead of UTC..."
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\TimeZoneInformation" -Name "RealTimeIsUniversal" -Type DWord -Value 0
Write-Host "Enabling Hibernation..."
Set-ItemProperty -Path "HKLM:\System\CurrentControlSet\Control\Session Manager\Power" -Name "HibernteEnabled" -Type Dword -Value 1
Set-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FlyoutMenuSettings" -Name "ShowHibernateOption" -Type Dword -Value 1
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Personalization" -Name "NoLockScreen" -ErrorAction SilentlyContinue
Write-Host "Hiding file operations details..."
If (Test-Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager") {
Remove-Item -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager" -Recurse -ErrorAction SilentlyContinue
}
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\OperationStatusManager" -Name "EnthusiastMode" -Type DWord -Value 0
Write-Host "Showing Task View button..."
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ShowTaskViewButton" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\People" -Name "PeopleBand" -Type DWord -Value 1
Write-Host "Changing default Explorer view to Quick Access..."
Set-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "LaunchTo" -Type DWord -Value 0
Write-Host "Unrestricting AutoLogger directory"
$autoLoggerDir = "$env:PROGRAMDATA\Microsoft\Diagnosis\ETLLogs\AutoLogger"
icacls $autoLoggerDir /grant:r SYSTEM:`(OI`)`(CI`)F | Out-Null
Write-Host "Enabling and starting Diagnostics Tracking Service"
Set-Service "DiagTrack" -StartupType Automatic
Start-Service "DiagTrack"
Write-Host "Hiding known file extensions"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "HideFileExt" -Type DWord -Value 1
Write-Host "Reset Local Group Policies to Stock Defaults"
# cmd /c secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
cmd /c RD /S /Q "%WinDir%\System32\GroupPolicyUsers"
cmd /c RD /S /Q "%WinDir%\System32\GroupPolicy"
cmd /c gpupdate /force
# Considered using Invoke-GPUpdate but requires module most people won't have installed
Write-Host "Adjusting visual effects for appearance..."
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "DragFullWindows" -Type String -Value 1
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "MenuShowDelay" -Type String -Value 400
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "UserPreferencesMask" -Type Binary -Value ([byte[]](158, 30, 7, 128, 18, 0, 0, 0))
Set-ItemProperty -Path "HKCU:\Control Panel\Desktop\WindowMetrics" -Name "MinAnimate" -Type String -Value 1
Set-ItemProperty -Path "HKCU:\Control Panel\Keyboard" -Name "KeyboardDelay" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewAlphaSelect" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "ListviewShadow" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" -Name "TaskbarAnimations" -Type DWord -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects" -Name "VisualFXSetting" -Type DWord -Value 3
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\DWM" -Name "EnableAeroPeek" -Type DWord -Value 1
Remove-ItemProperty -Path "HKCU:\Control Panel\Desktop" -Name "HungAppTimeout" -ErrorAction SilentlyContinue
Write-Host "Restoring Clipboard History..."
Remove-ItemProperty -Path "HKCU:\SOFTWARE\Microsoft\Clipboard" -Name "EnableClipboardHistory" -ErrorAction SilentlyContinue
Remove-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\System" -Name "AllowClipboardHistory" -ErrorAction SilentlyContinue
Write-Host "Enabling Notifications and Action Center"
Remove-Item -Path HKCU:\SOFTWARE\Policies\Microsoft\Windows\Explorer -Force
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\PushNotifications" -Name "ToastEnabled"
Write-Host "Restoring Default Right Click Menu Layout"
Remove-Item -Path "HKCU:\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}" -Recurse -Confirm:$false -Force
Write-Host "Reset News and Interests"
Set-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\Windows Feeds" -Name "EnableFeeds" -Type DWord -Value 1
# Remove "News and Interest" from taskbar
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Feeds" -Name "ShellFeedsTaskbarViewMode" -Type DWord -Value 0
Write-Host "Done - Reverted to Stock Settings"
Write-Host "Essential Undo Completed"
$ButtonType = [System.Windows.MessageBoxButton]::OK
$MessageboxTitle = "Undo All"
$Messageboxbody = ("Done")
$MessageIcon = [System.Windows.MessageBoxImage]::Information
[System.Windows.MessageBox]::Show($Messageboxbody, $MessageboxTitle, $ButtonType, $MessageIcon)
Write-Host "================================="
Write-Host "--- Undo All is Finished ---"
Write-Host "================================="
#>
}